1、链路是否连通
目的:检查网卡与网络是否物理连通,网线是否插好且连接可用,很多时候不能立刻到机房确定物理连接
# 检查网卡与网络是否物理连通,网线是否插好且连接可用,很多时候不能立刻到机房确定物理连接
[root@linux-node1 django-docker]# ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Supported pause frame use: No
Supports auto-negotiation: Yes
Supported FEC modes: Not reported
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Full
Advertised pause frame use: No
Advertised auto-negotiation: Yes
Advertised FEC modes: Not reported
Speed: 1000Mb/s # 当前网卡的速度,这是一个千兆网卡;
Duplex: Full # 当前网络支持全双工
Port: Twisted Pair
PHYAD: 0
Transceiver: internal
Auto-negotiation: on
MDI-X: off (auto)
Supports Wake-on: d
Wake-on: d
Current message level: 0x00000007 (7)
drv probe link
Link detected: yes # 前网卡和网络的物理连接正常
2、网卡和ip是否正常
[root@linux-node1 django-docker]# ifconfig eth0 # 查看网卡配置信息是否正确
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.56.11 netmask 255.255.255.0 broadcast 192.168.56.255
inet6 fe80::20c:29ff:fe45:f27a prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:45:f2:7a txqueuelen 1000 (Ethernet)
RX packets 696302 bytes 931683697 (888.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 191690 bytes 21641720 (20.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@linux-node1 django-docker]# systemctl restart network # 重启网卡,如果报错可能是网卡配置有问题
[root@linux-node1 django-docker]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 # 查看网卡配置是否正确
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=no
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
NAME=eth0
# UUID=3dacb9a3-62a4-41cc-b9ab-44a20ee9157e
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.56.11
NETMASK=255.255.255.0
GATEWAY=192.168.56.2
3、是否正确配置了网关
1) 如果网卡已经正常启动,需要确认目标网络接口是否正确配置网关
2)同时主机和网关之间的连接没有问题,通过route命令和ping命令结合完成这一阶段的排查
[root@linux-node1 django-docker]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.56.2 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.22.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-d744c4d28e2f
192.168.56.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
4、测试DNS是否可用
注:通常很多网络问题是DNS故障或配置不当造成的,nslookup和dig命令能够用来排查DNS问题
[root@linux-node1 django-docker]# nslookup www.baidu.com # yum install bind-utils
[root@linux-node1 django-docker]# cat /etc/resolv.conf # 查看dns配置是否正常
nameserver 192.168.56.2
5、远程主机是否开放端口
telnet 192.168.56.11 80
6、使用nmap工具检测端口开放情况
[root@linux-node1 django-docker]# nmap -p 22 192.168.56.11
Starting Nmap 6.40 ( http://nmap.org ) at 2020-02-29 07:52 EST
Nmap scan report for linux-node1 (192.168.56.11)
Host is up (0.000089s latency).
PORT STATE SERVICE
22/tcp open ssh
# open 代表开发了22端口,并且没有被防火墙拦截
# filtered 代表虽然开发端口,但是被防火墙拦截
# closed 代表本机没有监听这个端口
7、网络慢排查: iftop
[root@linux-node1 django-docker]# iftop -n
interface: eth0
IP address is: 192.168.56.11
MAC address is: 00:0c:29:45:f2:7a
391Kb 781Kb 977Kb
└───────────────────────┴───────────────────────┴─────────────────────────
源IP 传输方向 目的IP
192.168.56.11 => 192.168.56.1 752b 816b 1.10Kb
<= 184b 184b 771b
255.255.255.255 => 192.168.56.1 0b 0b 0b
───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
TX(发送): cum: 2.44MB peak: 2.81Kb rates: 752b 816b 1.10Kb
RX(介绍): 2.43MB 3.17Kb 184b 405b 881b
TOTAL: 4.87MB 5.98Kb 936b 1.19Kb 1.96Kb
# 最上方的一行刻度是整个网络的带宽比例,
# 下面第1列是源IP,第2列是目标IP,箭头表示了二者之间是否在传输数据,以及传输的方向。
# 最后三列分别是2s、10s、40s时两个主机之间的数据传输速率。
# 最下方的TX、RX分别代表发送、接收数据的统计,TOTAL则是数据传输总量