Ubuntu 基础网络排错

Ubuntu 基础网络排错

查看网卡信息

ifconfig

"""
br-8cfad14f3af4 Link encap:以太网 硬件地址 02:42:83:ad:67:64
inet 地址:172.18.0.1 广播:172.18.255.255 掩码:255.255.0.0
UP BROADCAST MULTICAST MTU:1500 跃点数:1
接收数据包:0 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:0 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:0
接收字节:0 (0.0 B) 发送字节:0 (0.0 B)

docker0 Link encap:以太网 硬件地址 02:42:1c:64:56:8f
inet 地址:172.17.0.1 广播:172.17.255.255 掩码:255.255.0.0
UP BROADCAST MULTICAST MTU:1500 跃点数:1
接收数据包:0 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:0 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:0
接收字节:0 (0.0 B) 发送字节:0 (0.0 B)

enp6s0 Link encap:以太网 硬件地址 34:97:f6:8d:55:37
inet 地址:192.168.50.228 广播:192.168.50.255 掩码:255.255.255.0
inet6 地址: fe80::5805:f69:d7e9:4d93/64 Scope:Link
inet6 地址: 2001:da8:a800:1007:6163:e5b5:ee4d:ef9/64 Scope:Global
inet6 地址: 2001:da8:a800:1007:a960:ef5a:58ad:86f9/64 Scope:Global
UP BROADCAST RUNNING MULTICAST MTU:1500 跃点数:1
接收数据包:714830 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:271085 错误:4 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:393839354 (393.8 MB) 发送字节:51512172 (51.5 MB)

lo Link encap:本地环回
inet 地址:127.0.0.1 掩码:255.0.0.0
UP LOOPBACK RUNNING MTU:65536 跃点数:1
接收数据包:75959 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:75959 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:38997685 (38.9 MB) 发送字节:38997685 (38.9 MB)
"""

其中ip地址为enp6s0的inet地址:192.168.50.228

enp6s0是我们真实的网卡

lo是本地回环表示本地

docker0和br-XXX是和docker有关的网络和网桥,会分配给docker网络

防火墙

# ufw防火墙状态
sudo ufw status

# 关闭防火墙
sudo ufw disabel

重启网络

service networking restart

配置文件

网卡配置文件: /etc/network/interfaces

DNS配置文件: /etc/resolv.conf 或者 /etc/resolvconf/resolv.conf.d/head 文件

ufw防火墙配置文件: /etc/ufw/before.rules

网络排错的基本思路

基本思路如下,这跟网上的大多数人写的应该是差不多的。

(1)检查物理链路是否有问题

(2)查看本机IP地址、路由、DNS的设置是否有问题

(3)测试网关或路由器的通畅情况。先测网关然后再测路由器,一级一级地测试

(4)测试ping公网ip的通畅情况(平时要记几个外部IP)

(5)测试DNS的通畅情况,可以直接ping网站地址

下面的第三部分,就针对上面的基本思路来进行详细的说明。

wKiom1Xggr_T2DRGAAFZ6sgmUa8621.jpg

检查物理链路是否有问题

看看网线有没有接通

wKioL1XgZ5vQX1E6AAChJvdnIKY159.jpg

查看本机IP地址、路由、DNS的设置是否有问题

如果采用的是DHCP自动获取的方法,那么这时候只需要看自己本机的设置上有没有开启自动获取IP的设置以及有没有开启相关的服务

如果用的是静态IP,那么就必须要注意IP地址的填写有没有错(一般网络管理人员给的)、IP地址的子网掩码有没有问题

# 查看ip地址、MAC地址、子网掩码、广播地址
ifconfig

# 查看dns地址
cat /etc/resolv.conf

测试网关或路由的通畅情况

# 检查数据的走向
sudo traceroute -d www.baidu.com

先测试到网关的通畅情况

ping -d 192.168.50.1

再测试到其他路由器的通畅情况

sudo traceroute 101.4.130.34

测试ping公网IP的通畅情况

ping 114.114.114.114

测试DNS的通畅情况

可以直接ping网站地址,看有没有回显示IP地址,通不通是了另外一回事

还有nslookup命令

nslookup
> baidu.com
"""
之后会出现解析的结果
"""

用netstat查看开放端口及服务

netstat -tnp

显示路由表

route -n
Author: pangzibo243
Link: https://litianbo243.github.io/2019/08/07/Ubuntu 基础网络排错/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
支付宝打赏
微信打赏