ubuntu20.04有线联网,已自动分配ip,但ping不通外网ip和路由器ip

Evl 2024-07-27 14:44:27

有线联网,ip a看到接口已打开,已分配ip,登录路由器也可以看到设备已连接。但就是ping不通外网ip和路由器的ip,ping baidu.com显示Temporary failure in name resolution。而且由于设备限制,只能用命令行操作,不能用桌面操作。求大佬帮助。

...全文
1880 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

在Ubuntu 20.04系统中遇到有线联网但无法Ping通外网IP和路由器IP的问题,可能是由多种原因造成的。以下是一些详细的排查步骤和解决方案。

一、网络连接及硬件检查

  1. 检查网线连接
    • 确保网线插头牢固地插入设备的网口和路由器的对应接口。如果松动,重新插拔网线。
    • 如果有条件,可以更换一根网线再进行测试,以排除网线损坏的可能性。
  2. 检查网络接口状态

    配图

    • 使用ip a命令查看网络接口的状态,确认接口已启用并且已分配IP地址。

二、IP配置及路由检查

  1. 检查IP地址、子网掩码和网关
    • 使用ip a命令查看设备获取的IP地址、子网掩码等信息是否正确。
    • 确保这些信息与路由器配置的网段一致,网关地址正确且可通。
    • 尝试使用ping命令测试网关地址,如果不通,需检查设备与路由器之间的网络连接及路由器配置。

      配图

  2. 检查路由表
    • 使用route -n命令查看路由表信息,确认是否存在到外网的默认路由。
    • 如果没有默认路由,可以手动添加或检查路由器的DHCP配置是否正确分配了路由信息。

三、DNS配置检查

  1. 查看resolv.conf文件
    • 使用sudo cat /etc/resolv.conf命令查看该文件中的DNS服务器配置。

      配图

    • 如果没有配置或配置错误,可以按以下步骤修改:
      • 使用sudo vim /etc/resolv.conf命令编辑该文件,添加有效的DNS服务器地址,如nameserver 8.8.8.8nameserver 8.8.4.4等公共DNS服务器,或使用路由器提供的DNS地址。
      • 修改完成后保存并退出文件。
      • 执行sudo systemctl restart systemd - resolved.service命令重启DNS解析服务,使新的DNS配置生效。

四、防火墙设置检查

  1. 查看防火墙规则
    • 使用iptables - L - n --line - numbers命令查看防火墙规则,检查是否有规则限制了ICMP协议或禁止了对外网的访问。
  2. 修改防火墙规则
    • 如果发现有相关限制规则,可以使用iptables - D命令删除相应规则,如iptables - D INPUT 1等。
    • 也可以根据需要添加允许ICMP协议和对外网访问的规则。

五、路由器设置检查

  1. 确认路由器外网连接正常
    • 登录路由器管理界面,查看路由器的外网连接状态,确保已正常拨号连接到互联网。
    • 如果未连接成功,需检查路由器的配置参数、账号密码等信息是否正确,或联系网络供应商确认网络状态。
  2. 检查路由器访问限制
    • 检查路由器是否设置了访问控制列表、MAC地址过滤等限制,导致设备无法访问外网。
    • 若有,需将设备的MAC地址添加到允许列表中,或调整访问控制规则,以允许设备访问外网。

推荐书籍

推荐书籍图书特点
《鸟哥的Linux私房菜:基础学习篇》作者:鸟哥(蔡佳伦)。这是一本非常适合Linux初学者的书籍。内容涵盖了Linux系统的基本概念、文件系统、用户管理、软件安装等多方面的基础知识。优点是讲解通俗易懂,结合大量实例,让读者能够轻松理解复杂的概念。缺点是对于一些高级主题涉及较少。
《Linux命令行与Shell脚本编程大全》作者:William Shotts。本书详细介绍了Linux命令行的使用以及Shell脚本编程。书中包含了众多实用的命令和脚本示例,可以帮助读者深入了解Linux系统的自动化操作。优点是内容全面且深入,适合想要深入学习Linux命令行和脚本编程的读者。缺点是对于初学者来说可能有些难度,需要有一定的基础才能更好地理解。
《Ubuntu Linux从入门到精通》作者:陶松武。专门针对Ubuntu系统编写的书籍,从安装Ubuntu开始,逐步介绍系统的配置、软件管理、网络设置等内容。优点是针对性强,所有内容都围绕Ubuntu系统展开,非常适合想要深入学习Ubuntu的读者。缺点是对其他Linux发行版的借鉴意义较小。

已隐藏部分内容,更多查看原文

  • 打赏
  • 举报
回复

最好是用内置的网卡,如果外接网卡的话最后买大牌子,踩过一次坑

zljun8210 2024-12-12
  • 打赏
  • 举报
回复 1

以下是一些可以尝试解决该问题的方法:
1、 检查网络连接及硬件
检查网线连接:确保网线插头牢固地插入设备的网口和路由器的对应接口,若松动则重新插拔.
更换网线:如果有条件,可更换一根网线再进行测试,以排除网线损坏导致的问题.
2、 检查 IP 配置及路由
检查 IP 地址、子网掩码、网关:通过ip a命令查看设备获取的 IP 地址、子网掩码等信息是否正确,确保与路由器配置的网段一致,网关地址正确且可通。可尝试ping网关地址,若不通,需检查设备与路由器之间的网络连接及路由器配置.
检查路由表:输入route -n命令查看路由表信息,确认是否存在到外网的默认路由。若没有默认路由,需手动添加或检查路由器的 DHCP 配置是否正确分配了路由信息 。
3、 检查 DNS 配置
查看 resolv.conf 文件:使用sudo cat /etc/resolv.conf命令查看该文件中的 DNS 服务器配置,若没有配置或配置错误,可按以下步骤修改.
修改 resolv.conf 文件:使用sudo vim /etc/resolv.conf命令编辑该文件,添加有效的 DNS 服务器地址,如nameserver 8.8.8.8和nameserver 8.8.4.4等公共 DNS 服务器,或使用路由器提供的 DNS 地址。修改完成后保存并退出文件.
重启 DNS 服务:执行sudo systemctl restart systemd-resolved.service命令重启 DNS 解析服务,使新的 DNS 配置生效.
4、 检查防火墙设置
查看防火墙规则:使用iptables -L -n --line-numbers命令查看防火墙规则,检查是否有规则限制了 ICMP 协议或禁止了对外网的访问.
删除或修改防火墙规则:如果发现有相关限制规则,可使用iptables -D命令删除相应规则,如iptables -D IN_public 1和iptables -D INPUT ,也可根据需要添加允许 ICMP 协议和对外网访问的规则.
检查其他安全软件:若系统安装了其他安全软件或防病毒软件,也可能会阻止网络访问,可暂时关闭或调整其访问规则,然后再次测试网络连接。
5、 检查路由器设置
确认路由器外网连接正常:登录路由器管理界面,查看路由器的外网连接状态,确保已正常拨号连接到互联网。若未连接成功,需检查路由器的配置参数、账号密码等信息是否正确,或联系网络供应商确认网络状态.
检查路由器访问限制:检查路由器是否设置了访问控制列表、MAC 地址过滤等限制,导致设备无法访问外网。若有,需将设备的 MAC 地址添加到允许列表中,或调整访问控制规则,以允许设备访问外网.

  • 打赏
  • 举报
回复

防火墙关闭 然后重新设置一下网络 是不是自动配置网络里设置有问题
可以将动态先修改成静态IP,然后再切换回来,试验一下

残影飞雪 2024-08-29
  • 打赏
  • 举报
回复

DNS存在问题

sijiuqi 2024-08-17
  • 打赏
  • 举报
回复

會不會是网卡有问题?硬件故障

  • 打赏
  • 举报
回复

在 Ubuntu 20.04 中,即使已自动分配 IP 但无法 Ping 通外网 IP 和路由器 IP ,可能有以下几种原因:

  1. 网络配置问题:
    检查网络配置是否正确。可以通过执行 ifconfig 命令查看网络接口的详细信息,确认 IP 地址、子网掩码、网关等设置是否准确。
    检查 DNS 配置。执行 cat /etc/resolv.conf 命令,确保其中的 DNS 服务器地址正确。
  2. 防火墙设置:
    Ubuntu 系统可能自带的防火墙(ufw)阻止了网络访问。可以通过执行 sudo ufw status 命令查看防火墙状态,如果是启用状态,可能需要适当配置规则放行相关网络访问。
  3. 路由问题:
    可能存在路由错误或缺失。可以使用 route -n 命令查看路由表,确认是否存在到达目标网络的正确路由。
    例如,如果 DNS 配置错误,可能会导致无法解析域名从而无法 Ping 通外网 IP 。假设 resolv.conf 中配置的 DNS 服务器地址不可用,将其修改为可用的 DNS 服务器地址,如 8.8.8.8 或 114.114.114.114 ,可能就能解决问题。
    又如,如果是防火墙阻止了访问,通过执行 sudo ufw allow icmp 命令允许 ICMP 协议的访问,也许就能成功 Ping 通。
    您可以按照上述步骤逐步排查问题,以确定具体的故障原因并解决。
  • 打赏
  • 举报
回复 1

可能有以下几种原因:

  1. 网络配置问题:
    检查网络配置是否正确。可以通过执行 ifconfig 命令查看网络接口的详细信息,确认 IP 地址、子网掩码、网关等设置是否准确。
    检查 DNS 配置。执行 cat /etc/resolv.conf 命令,确保其中的 DNS 服务器地址正确。
  2. 防火墙设置:
    Ubuntu 系统可能自带的防火墙(ufw)阻止了网络访问。可以通过执行 sudo ufw status 命令查看防火墙状态,如果是启用状态,可能需要适当配置规则放行相关网络访问。
  3. 路由问题:
    可能存在路由错误或缺失。可以使用 route -n 命令查看路由表,确认是否存在到达目标网络的正确路由。
    例如,如果 DNS 配置错误,可能会导致无法解析域名从而无法 Ping 通外网 IP 。假设 resolv.conf 中配置的 DNS 服务器地址不可用,将其修改为可用的 DNS 服务器地址,如 8.8.8.8 或 114.114.114.114 ,可能就能解决问题。
    又如,如果是防火墙阻止了访问,通过执行 sudo ufw allow icmp 命令允许 ICMP 协议的访问,也许就能成功 Ping 通。
    您可以按照上述步骤逐步排查问题,以确定具体的故障原因并解决。
encoding-console 2024-07-27
  • 打赏
  • 举报
回复 1

localhost:localdomain无法解析造成的,建议如下操作:
vim /etc/hosts
127.0.0.1 localhost
127.0.0.1

18,830

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
  • 专题技术讨论区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧