网络状态查看

网络状态查看我们列举两套工具包,一套是net-tools,一套是iproute或者有时候也叫iproute2

使用两套工具的作用是,在CentOS7以前,我们一般使用的都是net-tools工具包,而在CentOS7以后,主推的使用iproute工具包

ifconfig

查看网络状态既网卡状态,使用方法:ifconfig [网卡名称]

注意网卡名称是可选的,管理用户直接输入命令,普通用户需要 /sbin/ifconfig(注意普通用户需要加上命令的完整路径)

一般使用此命令查询出来的结果中,会显示etho,第一块网卡的状态信息,这个名字是默认的,但是有可能我们查询出来不叫这个名字,这是因为在CentOS7中使用了一致性网络设备命名,它会先去检测我们的网卡,检测后具体命名如下:

  1. en01 板载网卡

  2. ens33 PCI-E网卡

  3. enp0s3 无法获取物理信息的PCI-E网卡

  4. eth0 如果以上都获取不到,会使用此命名

使用示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
wangjia3@CHJ-20190520VPS:~$ ifconfig
eth3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.31.34.113 netmask 255.255.255.240 broadcast 172.31.34.127
inet6 fe80::4c47:3429:b72c:5130 prefixlen 64 scopeid 0x0<global>
ether 7e:15:d8:27:73:38 (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

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 1500
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x0<global>
loop (Local Loopback)
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

我们还可以使用命令:ifconfig 网卡名称 来查看指定网卡,例如我们只查看lo网卡的信息:

以上查询结果我们需要关注的是:

etho信息中的 inet选项,第一个参数addr是IP信息,Mask参数对应的是子网掩码,还要注意 有个 ether参数,它显示的是mac地址,RX、TX:发送数据包的个数及多少

lo网卡信息中:lo网卡表示的是本地环回,它的地址永远是127.0.0.1,这个网卡的作用就是我们在自己本地搭建了一个服务,在我们访问自己主机服务的时候,就使用这个IP

1
2
3
4
5
6
7
8
9
wangjia3@CHJ-20190520VPS:~$ ifconfig lo
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 1500
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x0<global>
loop (Local Loopback)
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

修改网卡名称

有时候我们在管理Linux网卡的时候,可能会有很多机器,我们需要写一个通用的脚本来修改,但是我们多个机器的网卡名称不一样,那么我们就需要手动的修改网卡的名称,来保证多个机器的网卡名称保持一致,这样能便于管理,下面我们介绍的就是修改网卡名称的方法,分为两步:

第一步:

网卡命名规则受 biosdevname和net.ifnames两个参数影响,这两个参数我们需要编辑 /etc/defult/grub 文件来修改,为此文件增加如下两个参数:

  1. biosdevname=0

  2. net.ifnames=0

第二步:

更新grup,上述编辑好的文件并不会在系统启动的时候被读取到,所以我们需要将上述文件转化为系统启动可读取的文件,使用命令:

grub2-mkconfig -o /boot/grup2/grup.cfg

第三步:

重启,重启命令是reboot,重启完成之后,网卡名称就变成了 eth0

biosdevname和net.ifnames组合明细:

序列 biosdevname net.ifnames 网卡名
默认 0 1 ens33
组合1 1 0 em1
组合2 0 0 eth0

查看网卡物理连接情况

查看网卡物理连接情况,比如查看网线是否连接好,Windows可以直接通过图形界面来查看,Linux需要用过命令来查看

mii-tool命令

使用方法:mii-tool [网卡名称]

注意CentOS7及以上使用此命令,网卡名称是必须要有的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
root@CHJ-20190520VPS:/# mii-tool
No interface specified
usage: mii-tool [-VvRrwl] [-A media,... | -F media] [-p addr] <interface ...>
-V, --version display version information
-v, --verbose more verbose output
-R, --reset reset MII to poweron state
-r, --restart restart autonegotiation
-w, --watch monitor for link status changes
-l, --log with -w, write events to syslog
-A, --advertise=media,... advertise only specified media
-F, --force=media force specified media technology
-p, --phy=addr set PHY (MII address) to report
media: 1000baseTx-HD, 1000baseTx-FD,
100baseT4, 100baseTx-FD, 100baseTx-HD,
10baseT-FD, 10baseT-HD,
(to advertise both HD and FD) 1000baseTx, 100baseTx, 10base

也可以使用:ethtool命令

使用方法:ethtool 网卡名称

1
2
3
[root@iZm5ehzqow4ijp2ya2g2drZ etc]# ethtool eth0
Settings for eth0:
Link detected: ye

查看网关命令

当我们机器需要网络通信的时候,需要连接其它的网络地址范围的时候,我们就需要配置网关,也叫配置路由

使用route命令来查看网关,使用方法:route [参数]

参数:-n 如果我们单独只用route命令时,默认使用时每一个IP都会反解成主机名,这个过程很慢,所以可以使用此参数可以不解析主机名

使用示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@iZm5ehzqow4ijp2ya2g2drZ etc]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.31.240.0 * 255.255.240.0 U 0 0 0 eth0
link-local * 255.255.0.0 U 1002 0 0 eth0
default 172.31.255.253 0.0.0.0 UG 0 0 0 eth0

[root@iZm5ehzqow4ijp2ya2g2drZ etc]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
172.31.240.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 172.31.255.253 0.0.0.0 UG 0 0 0 eth0

输出项说明:

输出项 说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:
- U — 路由是活动的
- H — 目标是一个主机
- G — 路由指向默认网关
- R — 恢复动态路由产生的表项
- D — 由路由的后台程序动态地安装
- M — 由路由的后台程序修改
- ! — 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 该路由表项对应的输出接口
  • 主机路由:主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H。例如,在下面的示例中,本地主机通过IP地址192.168.1.1的路由器到达IP地址为10.0.0.10的主机
1
2
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
10.0.0.10 192.168.1.1 255.255.240.0 UH 0 0 0 eth0
  • 网络路由:网络路由是代表主机可以到达的网络。网络路由的Flags字段为N。例如,在下面的示例中,本地主机将发送到网络192.19.12.20的数据包转发到IP地址为192.168.1.1的路由器
1
2
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.19.12.20 192.168.1.1 255.255.240.0 UN 0 0 0 eth0
  • 默认路由:当主机不能在路由表中查找到目标主机的IP地址或网络路由时,数据包就被发送到默认路由(默认网关)上。默认路由的Flags字段为G。例如,在下面的示例中,默认路由是IP地址为192.168.1.1的路由器
1
2
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default 192.168.1.1 0.0.0.0 UG 0 0 0 eth0

最后更新: 2019年08月03日 19:13

原始链接: https://jjw-story.github.io/2019/08/08/网络状态查看/

× 请我吃糖~
打赏二维码