Netplan,兩個子網路的兩個網關

Netplan,兩個子網路的兩個網關

我正在嘗試按照以下方式工作:

有2 個子網路(即192.168.15.0/24 和192.168.19.0/24)和兩個網關(192.168.105.1/24、192.168.109.1/24),以及使用netplan 作為路由器的Ubuntuplan .1/24) 、網關子網路中的 .2/24)。目標是對一個子網路使用一個網關,對第二個子網路使用另一個網關。即使我像 netplan 文件中那樣使用基於來源的路由,以兩個網關(隨機順序)結束,並且只有一個子網路可以存取互聯網。

請問我怎樣才能讓它發揮作用?

謝謝

編輯:-新增設定

使用此設置,可以從 192.168.105.xx 到互聯網工作,但從 192.168.109.xx 無法工作。

透過路由,有兩個 0.0.0.0/0 的網關

/etc/iptables/rules.v4

# Generated by iptables-save v1.6.1 on Sat Aug 22 10:38:15 2020
*nat
:PREROUTING ACCEPT [386:180180]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [1:76]
:POSTROUTING ACCEPT [1:76]
-A POSTROUTING -s 192.168.15.0/24 -o br105 -j MASQUERADE
-A POSTROUTING -s 192.168.19.0/24 -o br109 -j MASQUERADE
COMMIT
# Completed on Sat Aug 22 10:38:15 2020
# Generated by iptables-save v1.6.1 on Sat Aug 22 10:38:15 2020
*filter
:INPUT ACCEPT [4:1760]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [28:2536]
-A INPUT -i br105 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i br109 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Sat Aug 22 10:38:15 2020

/etc/netplan/01-netcfg.yaml

# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
  version: 2
  renderer: networkd
  ethernets:
    enp7s0:
      dhcp4: no

    enp7s1:
      dhcp4: no

    enp1s0f0:
      dhcp4: no

    enp1s0f1:
      dhcp4: no


  bridges:
    br15:
      dhcp4: no
      interfaces: [ enp7s0 ]
      addresses: [ 192.168.15.1/24 ]

    br19:
      dhcp4: no
      interfaces: [ enp7s1 ]
      addresses: [ 192.168.19.1/24 ]

    br105:
      dhcp4: no
      interfaces: [ enp1s0f0 ]
      addresses: [ 192.168.105.2/24 ]
      nameservers:
        addresses: [ 8.8.8.8 ]
      gateway4: 192.168.105.1

    br109:
      dhcp4: no
      interfaces: [ enp1s0f1 ]
      addresses: [ 192.168.109.2/24 ]
      routes:
        - to: 0.0.0.0/0
          from: 192.168.109.2
          via: 192.168.109.1
          on-link: true

答案1

雖然每個子網路都有一個網關,但每個子網路只能有一個預設網關,解決這個問題的方法實際上非常簡單 - 建立一個「靜態路由」。

因此,您需要選擇哪個子網路作為預設子網路並將其設定為預設閘道(DG),然後您要做的就是將第二個IP 位址新增至第二個適配器/VLAN,然後只需新增靜態路由。

因此,在該範例中,您再次將 NIC 1 指定為 192.168.15。 .105.1 不是),然後在NIC 2 上設定192.168.19.whatever,相同的NM,但這個沒有獲得DG。然後,您建立靜態路由,因為 192.168.19.0/24 中的任何內容都必須經過您指派給 NIC 2 的 IP,NIC 2 會充當該 IP 範圍的網關,但不是預設閘道。哦,192.168.109.1 當然不在這個範圍內,所以它也是錯誤的。

希望這夠清楚,但否則就可以了。

相關內容