首先,我对 Ubuntu 还很陌生,这是一台我正试图设置的工作电脑。任何帮助都将不胜感激!它是一台预装的电脑,没有 wifi 卡,但有两个以太网端口(用于科学计算的双 xeon 机器)。
当我插入适用于其他 Windows 机器的以太网电缆时,设置中检测到 1000MB/s 的连接,如果我尝试 ping 任何本地 IP 地址,它可以完美运行,但我无法访问任何互联网,无论我尝试什么 IP,我都会收到一条消息,提示主机不可用。
编辑:如果它有帮助,这是我运行 ifconfig 时的输出:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.20 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::4639:c4ff:fe92:94f7 prefixlen 64 scopeid 0x20<link>
ether 44:39:c4:92:94:f7 txqueuelen 1000 (Ethernet)
RX packets 733 bytes 101263 (101.2 KB)
RX errors 0 dropped 4 overruns 0 frame 0
TX packets 150 bytes 31120 (31.1 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device memory 0xd3e00000-d3e7ffff
eth1: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether 44:39:c4:92:94:f6 txqueuelen 1000 (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
device interrupt 20 memory 0xd3f00000-d3f20000
eth1:avahi: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 169.254.11.150 netmask 255.255.0.0 broadcast 169.254.255.255
ether 44:39:c4:92:94:f6 txqueuelen 1000 (Ethernet)
device interrupt 20 memory 0xd3f00000-d3f20000
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 1022 bytes 63852 (63.8 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1022 bytes 63852 (63.8 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
我尝试了几乎所有禁用 IPv6、手动设置连接等方法,但都无济于事。通常,当它不起作用时,我会运行sudo ifdown -a
然后sudo ifup -a
,但这次没有起作用...
任何帮助都将不胜感激!祝您有美好的一天!:)
答案1
这听起来像是路由问题 - 您可以使用 来查看您的路由ip route
。如果第一行不是以 开头,default via <ipaddress>
那么可能就是问题所在。您可以使用sudo ip route add default via <ipaddress>
应该只有一条默认路由。
还要记住,最具体的路由会首先遍历。例如,如果您想要到达 10.1.1.20,则该路由将发送到 10.1.1.0/25 适配器,而不是 10.1.1.0/24 适配器。还要查看适配器度量,度量越低,优先级越高。
如果发生某些不对称路由(即流量从一个适配器出去并在另一个适配器上返回),则可能有一些防火墙规则阻止您的流量。
你也可以禁用 ipv6,直到重新启动
sudo sysctl net.ipv6.conf.all.disable_ipv6=1
如果你认为这可能是 DNS 问题,你可以使用
systemd-resolve --status
以下 方法检查你的设置:cat /etc/resolv.conf
答案2
对于加入此主题的每个人,我已修复了它!我认为有 eth0 和 eth1 端口但没有 eth0 的第二段很奇怪,然后发现我必须将 eth0 添加到我的 etc/network/interfaces 文件中!感谢您的帮助,非常感谢!:)