搬家后Ubuntu服务器网络不可达问题求助
看起来你搬家后遇上Ubuntu服务器连不上内网的麻烦了,先别慌,咱们一步步来排查,应该能找到问题所在。
首先看你贴的ip a输出,eno1网卡只有IPv6的链路本地地址,完全没有IPv4地址,这就是ping不通内网、路由器识别不到的核心问题之一。给你几个具体的排查步骤:
先手动触发DHCP获取IP试试:
执行sudo dhclient eno1,等个10秒左右再跑ip a show eno1,看看有没有新增inet x.x.x.x/24这样的IPv4地址。如果还是没有,那大概率是DHCP配置或者链路的问题。检查Netplan网络配置(Ubuntu 20.04默认用这个管理网络):
- 先看配置文件位置:
ls /etc/netplan/,一般会有个类似00-installer-config.yaml的文件 - 查看配置内容:
cat /etc/netplan/00-installer-config.yaml,正常自动配置的话应该有dhcp4: true的设置(注意YAML文件对缩进要求极高,不能有空格错误) - 如果配置没问题,执行
sudo netplan apply重新应用配置,再检查IP;如果配置里是dhcp4: false,那说明之前可能改成了静态IP但没配置完整,得改成dhcp4: true再应用。
- 先看配置文件位置:
排查物理链路和网卡状态:
- 跑
ethtool eno1,重点看最后一行Link detected: yes/no,如果是no,哪怕你觉得网线没问题,也换个路由器的网口或者换根网线试试——有时候搬家过程中网线被压到内部断线,或者路由器网口接触不良 - 用
lshw -C network检查网卡驱动,看看eno1的driver字段有没有内容,如果显示unclaimed,那可能是驱动没加载(不过之前能正常用,大概率不是,但可以重启服务器试试,说不定是搬家震动导致的驱动异常) - 查看网卡日志:
dmesg | grep eno1,看看有没有类似link down、driver error的错误信息,这能帮我们定位是硬件还是驱动问题。
- 跑
临时配置静态IP测试(跳过DHCP直接验证链路):
假设你家路由器的网段是192.168.1.x(如果是其他网段比如192.168.0.x就对应改),执行:sudo ip addr add 192.168.1.100/24 dev eno1 sudo ip route add default via 192.168.1.1 dev eno1然后ping路由器的网关(比如192.168.1.1),如果能通,那说明是DHCP的问题——要么是路由器DHCP池满了,要么是路由器把服务器的MAC地址拉黑了,你可以登录路由器后台看看DHCP客户端列表、MAC过滤规则。
排除防火墙干扰:
虽然Ubuntu默认的ufw防火墙默认不拦截内网通信,但保险起见可以临时关闭试试:sudo ufw disable,然后再ping内网设备,排除防火墙误拦截的可能。
另外还有个小细节:你贴的IPv6地址最后一段是a05a,但网卡MAC地址最后一段是a05b,不过这是正常的(IPv6链路本地地址会把MAC地址的第7位翻转),不用在意这个。
如果以上步骤都没解决,你可以把排查过程中得到的新信息(比如netplan配置内容、ethtool输出、dmesg日志)贴出来,大家再一起分析。
备注:内容来源于stack exchange,提问作者ShadeBlackwolf

