码迷,mamicode.com
首页 > 其他好文 > 详细

【学神-RHEL7】1-21-RHEL7网络管理相关的命令

时间:2015-12-22 06:36:11      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:rhel7网络管理相关的命令

本节所讲内容:

      OSI七层模型和TCP/IP四层模型

      IP地址分类

      了解常见的网络相关协议

      TCP三次握手和四次挥手

      网络相关的调试命令

      实战tcpdump和tshark抓包

 

OSI 七层模型                                            TCP/IP 四层模型                 

应用层                                           应用层:如:http协议  FTP协议

表示层  ASCII       

会话层         

 

传输层  防火墙                                   传输层  tcp udp

网络层  三层交换机和路由器                网络层  路由器

 

数据链路 二层交换机和网卡                      链路接口层

物理层   集线器

 

 

技术分享

 

IP地址分类:

简单的说,IP地址分5类,常见的地址是A、B、C类

A类地址:范围从0-1270是保留的并且表示所有IP地址(例:0.0.0.0),而127也是保留的地址,并

且是用于测试环回口用的。因此A类地址的可用的范围其实是从1-126之间。

以子网掩码来进行区别:255.0.0.0

8.8.8.8

范围

0

*

*

*

*

*

*

*

二进制

十进制

最小

0

0

0

0

0

0

0

0

00000000

0

最大

0

1

1

1

1

1

1

1

01111111

127

B类地址:范围从128-191,如172.168.1.1,第一和第二段号码为网络号码,剩下的2段号码为本地计算机的号码。  以子网掩码来进行区别:255.255.0.0

 

范围

1

0

*

*

*

*

*

*

二进制

十进制

最小

1

0

0

0

0

0

0

0

10000000

128

最大

1

0

1

1

1

1

1

1

10111111

191

 

C类地址:范围从192-223,以子网掩码来进行区别: 255.255.255.0

例如: 192.168.1.254 

范围

1

1

0

*

*

*

*

*

二进制

十进制

最小

1

1

0

0

0

0

0

0

11000000

192

最大

1

1

0

1

1

1

1

1

11011111

223

 

D类地址:范围从224-239,被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机

 

E类地址:军工企业,科研部门

 

它标识共享同一协议的一组计算机。

例:

技术分享

 

私有IP

A:10.0.0.0/8

B:  172.16.0.0 ~ 172.31.0.0/16

C:  192.168.0.0 ~ 192.168.255.0/24    255.255.255.0

 

例:

回环口一直是可用up状态:       

结论:这个127这个网段都用于环回口

[root@localhost ~]#ping 127.1.10.11

PING 127.1.10.11(127.1.10.11) 56(84) bytes of data.

64 bytes from127.1.10.11: icmp_seq=1 ttl=64 time=0.023 ms

64 bytes from127.1.10.11: icmp_seq=2 ttl=64 time=0.046 ms

 

TCP/IP协议

TCP/IP协议是一个协议簇。里面包括很多协议的

 

例如:
超文本传输协议(HTTP):万维网的基本协议.   
文件传输ftp

(TFTP简单文件传输协议):   搭建无人值守安装服务器

远程登录(Telnet)

网络管理(SNMP简单网络管理协议)

TCP TransmissionControl Protocol,传输控制协议)是面向连接的协议,

UDP UDP(User Data Protocol,用户数据报协议)非连接的协议

Internet协议(IP)     
Internet
控制信息协议(ICMP)   
地址解析协议(ARP)    
反向地址解析协议(RARP)

 

TCP和UDP区别

1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.tcp流模式与udp数据报模式 ;

 

tcp: 三次握手

作用:建立连接

tcp三次握手的链接状态

技术分享

 

Client                            Server

 

TCP连接状态   建立过程        TCP连接状态

               LISTEN

SYN_SENT   ---syn seq=a -->       SYN_RCVD

ESTABLISHED <--syn seq=b ack=a+1

           --ack=b+1-->      ESTABLISHED  #(单词意思为:公认;含意为:连接成功

 

任务:FIN   SYN  ACK   RST

 

TCP四次挥手四交挥手状态:

关闭连接:四次挥手

技术分享

 

  C                        S

FIN_WAIT  --fin seq=a-->     CLOSE_WAIT

FIN_WAIT2  <--ack a+1-- 

TIME_WAIT  <--fin b--    LAST_ACK

          --ack b+1-->   CLOSE

 

网络接口类型表示方法:

以太网(ethernet)  eno(7位数字)      RHEL6    ethN

回环口              lo

光纤网             fddiN

桥设备:            br0

Linux ADSL宽带接口:ppp              pppN  如:ppp0

隧道                     tun0   tun1

 

网络相关的调试命令:

查看网卡硬件相关信息:

#查看网卡物理连接是否正常

[root@localhost ~]#mii-tool eno16777736

eno16777736: negotiated1000baseT-FD flow-control, link ok

[root@localhost~]# mii-tool eno16777736

eno16777736:no link

 

ethtool 是用于查询及设置网卡参数的命令。

[root@localhost ~]# ethtool eno16777736

Settings for eno16777736:

                Supportedports: [ TP ]

                Supportedlink modes:   10baseT/Half 10baseT/Full

                                        100baseT/Half 100baseT/Full

                                        1000baseT/Full

                Supportedpause frame use: No

                Supportsauto-negotiation: Yes

                Advertisedlink modes:  10baseT/Half 10baseT/Full

                                        100baseT/Half100baseT/Full

                                        1000baseT/Full

                Advertisedpause frame use: No

                Advertisedauto-negotiation: Yes

                Speed: 1000Mb/s

                Duplex:Full

                Port:Twisted Pair

                PHYAD: 0

                Transceiver:internal

                Auto-negotiation:on

                MDI-X:off (auto)

                SupportsWake-on: d

                Wake-on:d

                Currentmessage level: 0x00000007 (7)

                                   drv probe link

                Linkdetected: yes

 

配置网络和IP地址:

方法一:

[root@localhost ~]#nmtui-edit eno16777736

[root@localhost ~]#nmtui

(TUI,方式,文本用户界面(Text User Interface)配置IP地址

 

方法二:修改网卡配置文件

[root@localhost ~]# vim/etc/sysconfig/network-scripts/ifcfg-eno16777736

TYPE="Ethernet"

BOOTPROTO="none"

DEFROUTE="yes"

IPV4_FAILURE_FATAL="no"

IPV6INIT="yes"

IPV6_AUTOCONF="yes"

IPV6_DEFROUTE="yes"

IPV6_FAILURE_FATAL="no"

NAME="eno16777736"

UUID="2f532aa0-e1cf-4fa4-8379-86c911727689"

DEVICE="eno16777736"

ONBOOT="yes"                                                     #开启网卡

IPADDR="192.168.1.68"

PREFIX="24"

GATEWAY="192.168.1.1"

DNS1="8.8.8.8"

IPV6_PEERDNS="yes"

IPV6_PEERROUTES="yes"

IPV6_PRIVACY="no"

 

注:

BOOTPROTO=static   静态IP

BOOTPROTO=dhcp   动态IP

BOOTPROTO=none   无(不指定)

 

说明:在RHEL7中增强了NetworkManager服务功能,弱化了network的功能,RHEL7中要确定NetworkManager服务是开启的状态

[root@localhost ~]# systemctlstatus NetworkManager

NetworkManager.service -Network Manager

   Loaded: loaded(/usr/lib/systemd/system/NetworkManager.service; enabled)

   Active: active (running) since Mon 2015-12-2120:01:23 CST; 1h 47min ago

 

开启NetworkManager

[root@localhost ~]# systemctlrestart NetworkManager

[root@localhost ~]# systemctlenable NetworkManager

#此服务不开启,则无法通过nmtui工具配置网络

 

重启网络服务

[root@localhost ~]#systemctl restart network

 

扩展:

RHEL6网络服务管理方式

NetworkManager服务建议关闭

[root@localhost ~]#service NetworkManager stop

[root@localhost ~]#chkconfig NetworkManager off

[root@localhost ~]#service network restart

 

例:给新添加的网卡添加IP地址和对应的配置文件。

添加网卡之后查看网卡的名称

[root@localhost ~]#ifconfig -a

eno16777736:flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 192.168.1.68  netmask 255.255.255.0  broadcast 192.168.1.255

        inet6 fe80::20c:29ff:fec7:1b37  prefixlen 64 scopeid 0x20<link>

        ether 00:0c:29:c7:1b:37  txqueuelen 1000  (Ethernet)

        RX packets 1011  bytes 91069 (88.9 KiB)

        RX errors 0  dropped 0 overruns 0  frame 0

        TX packets 729  bytes 84384 (82.4 KiB)

        TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0

 

eno33554984:flags=4098<BROADCAST,MULTICAST> mtu 1500

        ether 00:0c:29:c7:1b:41  txqueuelen 1000  (Ethernet)

        RX packets 0  bytes 0 (0.0 B)

        RX errors 0  dropped 0 overruns 0  frame 0

        TX packets 0  bytes 0 (0.0 B)

        TX errors 0  dropped 0 overruns 0  carrier 0 collisions 0

首先,添加设备

技术分享

配置网络信息

技术分享

重启网络服务

[root@localhost ~]#systemctl restart network

 

修改主机名配置文件

[root@localhost ~]# vim/etc/hostname

[root@localhost ~]#hostname

xuegodrm.cn

 

如果是RHEL6操作系统,通过下面的文件修改主机名

[root@localhost ~]# vim/etc/sysconfig/network

 

配置IP与主机名(域名)的对应。

[root@localhost ~]# vim/etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4localhost4.localdomain4

::1         localhost localhost.localdomainlocalhost6 localhost6.localdomain6

192.168.1.68    xuegodrm        host1

 

DNS配置的配置文件

[root@localhost ~]# vim/etc/resolv.conf

 

互动:是不是一定先解析hosts再解析DNS?

本机域名解析顺序

#vim /etc/nsswitch.conf    #查找以下内容

#hosts:     db files nisplus nis dns

hosts:      files dns

 

端口号和服务对应的配置文件

[root@localhost ~]# vim/etc/services

#此文件可以查看常用端口对应的名字。iptables或netstat要把端口解析成协议名时,都需要使用到这个文件。另外后期xinetd服务管理一些小服务时,也会使用到此文件来查询对应的小服务端口号。

 

查看路由信息: 查看默认网关

[root@localhost ~]#route -n

Kernel IP routing table

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

0.0.0.0         192.168.1.1     0.0.0.0         UG   100    0       0 eno16777736

192.168.1.0     0.0.0.0         255.255.255.0   U    100    0        0 eno16777736

192.168.2.0     0.0.0.0         255.255.255.0   U    100    0        0 eno33554984

 

说明:

route命令输出的路由表字段含义如下:
    Destination 目标
          The destination networkor destination host. 目标网络或目标主机。

    Gateway 网关
          The gateway address or‘*‘ if none set. 网关地址,如果没有就显示星号或4个0。

    Genmask 网络掩码
          The  netmask for  the  destination net; ‘255.255.255.255‘ for a
          host destination and‘0.0.0.0‘ for the default route.

 

添加/删除路由条目:

增加 (add) 与删除 (del) 路由的相关参数:
  -net    :表示后面接的路由为一个网域;
  -host  :表示后面接的为连接到单部主机的路由;
  netmask :与网域有关,可以设定 netmask 决定网域的大小;
   dev    :如果只是要指定由那一块网路卡连线出去,则使用这个设定,后面接 eth0 等

[root@localhost ~]# route add-net 192.168.2.0 netmask 255.255.255.0 dev eno33554984

[root@localhost ~]# route del-net 192.168.2.0 netmask 255.255.255.0

 

查看网络连接状态

[root@localhost ~]# netstat-anptu

-a,--all

-n,--numeric              don‘t resolvenames

-p,--programs

-t  显示tcp连接

-u  显示udp连接

 

ping命令的一般格式为:

-c 数目 在发送指定数目的包后停止。

-i 秒数 设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次。

-I  指定接口

指定从哪个端口出去。

[root@localhost ~]# ping -Ieno16777736 192.168.1.1

 

Iptraf

查看网络流量

[root@localhost ~]# rpm -ivh/mnt/Packages/iptraf-ng-1.1.4-4.el7.x86_64.rpm

[root@localhost ~]# iptraf-ng

技术分享

技术分享

arping: 查看IP地址是否有冲突

[root@localhost ~]# arping -Ieno16777736 192.168.1.1

ARPING 192.168.1.1 from192.168.1.68 eno16777736

Unicast reply from 192.168.1.1[FC:D7:33:24:88:24]  1.102ms

Unicast reply from 192.168.1.1[FC:D7:33:24:88:24]  0.801ms

Unicast reply from 192.168.1.1[FC:D7:33:24:88:24]  0.741ms

 

tcpdump命令:

三次握手过程分析

tcpdump port 22 -c 3 -n  -S

# port  端口号

-c  抓几个包

-n  不解析端口号为协议名

 -S    Print absolute, rather than relative, TCP  sequence numbers.

-i   指定网卡

在主机A上开启SSHD服务,此时不要有任何客户端主机来连接主机A的SSHD服务。这样是为了抓包更清楚。 

首先在客户端xuegod69上安装telnet

技术分享

 

在服务端

tcpdump  port 22 -c  3  -n -S  -i  eno16777736

抓包命令

在客户端

telnet  192.168.1.68 22

技术分享

 

抓包命令

技术分享

创建一个保存抓包信息的文件

touch  a.txt

执行抓包命令

[root@xuegodrm ~]# tshark -wa.txt -i eno16777736

[root@xuegodrm ~]# tshark -ra.txt

-r 指定要读取的包文件
-V
将包尽可能的解析(这个有时在包数量很多的情况下可以不使用,这样它会给出一个很简洁的报文解释)

 

学习过程中如果问题,请留言。更多内容请加:
学神IT-linux讲师-RM老师QQ:2805537762
学神IT-戚老师QQ:3341251313
学神IT-旭斌QQ:372469347
学神IT教育RHEL7交流群:468845589

 

 


本文出自 “学神IT教育-讲师MK” 博客,请务必保留此出处http://xuegodlinux.blog.51cto.com/10844319/1726988

【学神-RHEL7】1-21-RHEL7网络管理相关的命令

标签:rhel7网络管理相关的命令

原文地址:http://xuegodlinux.blog.51cto.com/10844319/1726988

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!