Ubuntu:我无法访问互联网

Ubuntu:我无法访问互联网

我正在尝试在我的 Ubuntu 服务器上安装 nodejs,但它似乎无法访问互联网。

我的服务器有两个网络接口:

  1. eth0连接到我的网络
  2. eth1有时用于连接到第二个网络,但通常不使用。

我的网关是普通 C 类网络上的 192.168.0.1。

当我尝试 ping 网络内的任何主机时,一切正常,但当我尝试 ping 网关时,我无法收到任何响应,并且当我尝试 ping 任何外部域时,无论提供的名称解析如何正确,都会发生同样的情况通过我的 DNS。

这是我的配置:

如果配置:

root:~# ifconfig

eth0      Link encap:Ethernet  HWaddr a4:5d:36:c3:44:18
          inet addr:192.168.0.168  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::a65d:36ff:fec3:4418/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:31531 errors:0 dropped:108 overruns:0 frame:0
          TX packets:6734 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:3896820 (3.8 MB)  TX bytes:930411 (930.4 KB)
          Interrupt:16

eth1      Link encap:Ethernet  HWaddr a4:5d:36:c3:44:19
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:17

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:68235 (68.2 KB)  TX bytes:68235 (68.2 KB) 

我的路线:

root@:~# ip route show
default via 192.168.0.1 dev eth0
192.168.0.0/24 dev eth0  proto kernel  scope link  src 192.168.0.168
192.168.1.0/24 dev eth1  proto kernel  scope link  src 192.168.1.1

/etc/网络/接口

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
        iface lo inet loopback

auto eth0
        iface eth0 inet static
        metric 0
        address 192.168.0.168
        netmask 255.255.255.0
        network 192.168.0.0
        broadcast 192.168.0.255
        gateway 192.168.0.1
        dns-nameservers 192.168.0.3 192.168.0.2

auto eth1
        iface eth1 inet static
        metric 1
        address 192.168.1.1
        netmask 255.255.255.0
        gateway 192.168.0.168
        dns-nameservers 192.168.1.1 192.168.0.168

哪里有问题?

答案1

请编辑/etc/sysctl.conf这些行并将其添加到底部:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

然后运行命令

sysctl -p

sudo如果您没有以 root 身份登录,请使用。然后你应该在终端上看到这个:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1

cat /proc/sys/net/ipv6/conf/all/disable_ipv6

应该给出输出

1

192.168.0.1然后再次尝试 ping IP 地址。

编辑

似乎还需要注释掉/etc/hosts文件中的 IPV6 条目。经过一番聊天才明白。

答案2

您不能有两个默认网关。删除 auto eth1 下的 gateway 命令。

如果您无法 ping 通您的网关,并且它连接到同一个交换机(或者是交换机),则您遇到的问题与网关无关。其他机器是否可以与网关通信,或者这是问题所在?

注释掉 eth1 的设置以避免出现问题,直至修复。

相关内容