將一台 Linux PC 連接到兩個不同的 LAN 網路(一個用於生產,一個用於測試)

將一台 Linux PC 連接到兩個不同的 LAN 網路(一個用於生產,一個用於測試)
            Cable Modem
        (with 4-port switch)
                |
               / \
              /   \
             /     \
      Router1       Router2
        |               |
       LAN              |
        |               |
(multiple PC's)         |
        |              /
         \            /
          \          /
         [eth0     eth1]
         [    my PC    ]

Router1 和 Router2 運行 Arch Linux。兩者的設定相同。 Router1 處於即時/生產狀態。 Router2 是一個測試/開發單元。 Router2 可作為冷備用路由器(通常僅在 Router1 發生故障或需要維修時才連接的備用路由器。)

電纜調變解調器是 DHCP 伺服器。電纜數據機將在 Router1 和 Router2 的 WAN 連接埠上指派 IP 位址。兩台路由器都運行 dnsmasq 作為 DHCP 伺服器,並且設定相同,都向其 DHCP 用戶端分配相同的 IP 位址範圍。

當我的電腦透過 eth0 (IP 192.168.0.10) 連接到 LAN 時,我需要暫時連接到 Router2 來執行一些測試。過去,我總是在工作時間之外做這項工作。程式是連接 Router2,斷開我的 PC 與 LAN 的連接並將其直接連接到 Router2,然後執行我的工作。然而,這非常不方便。

我的 PC 上有 eth1(第二個實體網路卡)。 (我的 PC 也運行 Arch Linux。)我希望能夠在工作時間透過 eth0 連接到 LAN 時在 Router2 上工作。連接後,我需要 ssh 進入 Router2 並完成工作,然後關閉 Router2 並斷開它與電纜數據機的連接。

預設情況下,Router1和Router2的LAN口均為192.168.0.1,閘道為192.168.0.255。

我怎樣才能實現我的目標?我假設我可能必須更改 Router2 上的一些網路設置,但我希望將此類更改保持在最低限度,因為它應該完全複製 Router1。

答案1

我喜歡 LostWander 的答案,但如果這只是您想要臨時設定的內容,您可以使用以下內容將路由新增至 PC 的路由表:

ip route add a.b.c.d/32 dev eth1

其中 abcd 是 Router2 的 IP 位址。注意:在刪除此路由之前,您將無法與連接到 eth0 的網路上與 Router2 具有相同 IP 位址的任何裝置進行通訊。

答案2

實際上,可以讓您在對路由器設定進行最少更改的情況下存取 Router2,方法是在您的 PC 上建立虛擬機器。然後,您可以將 eth1 指派給該虛擬機,並使用您想要使用的任何虛擬機主機軟體。這樣您就不必更改路由器的任何內容,也不必弄亂 PC 上的路由表。

相關內容