不能同时使用两个网络接口

And*_*kaa 11 server networking internet interface 14.04

我有个问题。首先,我想在 Ubuntu 14.04 上设置服务器。我有 2 个接口:用于 dhcp 服务器的 eth0 和用于 Internet 连接的 eth1。但是如果我同时连接到两个网络,PC 上就没有互联网。所以我必须在服务器和互联网之间做出选择。太可怕了,谁能告诉我如何关闭这个问题?

/etc/network/interfaces:

auto lo eth0 eth1

iface lo inet loopback

iface eth0 inet static
address 172.16.1.100
netmask 255.255.255.0
broadcast 172.16.1.255
gateway 172.16.1.254
Run Code Online (Sandbox Code Playgroud)

须藤路线输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth1
192.168.0.0     *               255.255.255.0   U     1      0        0 eth1
Run Code Online (Sandbox Code Playgroud)

UPD:ifconfig 输出:

eth0      Link encap:Ethernet  HWaddr 90:e6:ba:46:1d:50  
          inet6 addr: fe80::92e6:baff:fe46:1d50/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1110 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:184287 (184.2 KB)

eth1      Link encap:Ethernet  HWaddr 00:04:75:98:5f:da  
          inet addr:192.168.0.101  Bcast:192.168.0.255  Mask:255.255.255.0
          inet6 addr: fe80::204:75ff:fe98:5fda/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:14498 errors:0 dropped:0 overruns:2 frame:0
          TX packets:13096 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:9710708 (9.7 MB)  TX bytes:1840400 (1.8 MB)
          Interrupt:18 Base address:0x4c00 

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:4398 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4398 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:527890 (527.8 KB)  TX bytes:527890 (527.8 KB)
Run Code Online (Sandbox Code Playgroud)

Ben*_*oit 5

配置ifconfig我的第一个答案的输出和评论,我认为问题与您在/etc/network/interfaces.

由于您没有eth1 in 的任何特定配置/etc/network/interfaces,我想您的调制解调器正在通过 DHCP 向您的服务器提供 IP 信息。根据route输出,您的默认网关指向调制解调器,因此指向 Internet。

但是在您/etc/network/interfaceseth0文件中,您还配置了一个默认网关(语句gateway 172.16.1.254)。

一个系统上不能有两个默认网关。上的默认网关的分配eth1的禁用的静态配置的eth0,之所以不存在用于IP为eth0ifconfig输出,为什么上网工程和内部网络不动了。

您将不得不删除该行gateway 172.16.1.254并重试。

通过这样做,当然,如果您在内部 LAN 上有多个子网,您将无法再访问它们。除非您在服务器上为所有这些子网配置静态路由:

须藤路线添加-net ABCD gw 1​​72.16.1.254

您可以route在保存的脚本中添加该命令,/etc/network/if-up.d以便在每次界面启动时运行。