Ubuntu

Ubuntu,兩個 NIC,但只有一個具有 Internet 連接

  • December 30, 2019

我的 Ubuntu 出現問題,因為我無法使用 wget 或使用目前設置訪問任何網站。

我有兩個 NIC,enp2s0 和 enp2s1。

enp2s0 連接到網際網路但連接到 NAT 路由器(IP 地址:192.168.1.2)

而對於 enp2s1,它連接到另一個沒有網際網路的路由器,因為它僅用於內部網路(IP 地址:10.0.0.5)

如果唯一連接的網卡是與網際網路(enp2s0)連接的網卡,則電腦可以訪問任何網站。但是一旦連接了第二個網卡(enp2s0 和 enp2s1),電腦就不會載入任何網頁、wget 甚至 apt-get update 或 apt-get install。

這與 iptables 或路由有關嗎?幫助我,因為我是新手。

以下是該機器的一些目前詳細資訊:

$ ip route show
default via 192.168.1.1 dev enp2s0 proto dhcp metric 20100
default via 10.0.0.1 dev enp2s1 proto dhcp metric 20101
169.254.0.0/16 dev enp2s0 scope link metric 1000
192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.2 metric 100
10.0.0.0/24 dev enp2s1 proto kernel scope link src 10.0.0.5 metric 101

$ iptables -S -t nat; iptables -S
-P PREROUTING ACCEPT
-P INPUT ACCEPT
-P OUTPUT ACCEPT
-P POSTROUTING ACCEPT
-P INPUT ACCEPT
-P FORWARD ACCEPT
-P OUTPUT ACCEPT

$ ip r
default via 192.168.1.1 dev enp2s0 proto dhcp metric 20100
default via 10.0.0.1 dev enp2s1 proto dhcp metric 20101
169.254.0.0/16 dev enp2s0scope link metric 1000
192.168.1.0/24 dev enp2s0 proto kernel scope link src 192.168.1.2 metric 100
10.0.0.0/24 dev enp2s1  proto kernel scope link src 10.0.0.5 metric 101

/etc/網路/介面

auto lo
iface lo inet loopback

由於這是一個新安裝的 ubuntu,我們還沒有在機器上維護任何東西。

對於網路 10.0.0.0/24,我們希望每個連接的設備都有網路連接(即文件共享、Web 伺服器檢查),並且它與 Internet 完全隔離……

10.0.0.5 被分配給 enp2s1 NIC,因為路由器有自己的 DHCP,而 10.0.0.1 是路由器網關

正如上述評論中指出的,您有兩個預設路由(通過192.168.1.110.0.0.1),但只有第一個連接到 Internet。如果路由表與您發布的一樣,您將擁有 Internet 連接:每當您有兩條通往同一目的地的路線時,較小的一條metric獲勝。

但是,由於metric不是由您分配,而是由 DHCP 客戶端分配,所以 的值metric取決於啟動介面的順序。我會將您的配置更改為靜態配置。在文件/etc/network/interfaces中添加以下行:

auto enp2s0
iface enp2s0 inet static
   address 192.168.1.2
   netmask 24
   gateway 192.168.1.1

auto enp2s1
iface enp2s1 inet static
   address 10.0.0.5
   netmask 24

並重新啟動網路 ( sudo systemctl restart networking)。

PS:這是在 Ubuntu/Debian 上配置網路的最古老的方法。在新的 Ubuntu 上,當然還有NetworkManagersystemd-networkd(按出現順序)。這兩者還有一個等效的配置。

引用自:https://serverfault.com/questions/997118