Netplan 無法啟動 VLAN

Netplan 無法啟動 VLAN

我正在嘗試在啟動時正確配置 Ubuntu 20.04 伺服器網路。我有一個連接到中繼的實體接口,因此我想在其上定義一些帶有 VLAN 標記的介面。我正在使用網路計劃。內容/etc/netplan/50-cloud-init.yaml如下:

network:
    ethernets:
        eno1:
            match:
                macaddress: b8:83:03:XX:XX:XX
            mtu: 1500
        eno2:
        ...
    version: 2
    vlans:
        vlan3110:
            id: 3110
            link: eno1
            dhcp4: no
            addresses: [X.X.X.X/24]
            gateway4: X.X.X.X
        vlan3112:
            id: 3112
            link: eno1
            dhcp4: no
        vlan3111:
            id: 3111
            link: eno1
            dhcp4: no

現在,如果我重新啟動系統,則不會為 vlan3110 分配任何 IP:

#ip a
...
9: vlan3110@eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether b8:83:03:XX:XX:XX brd ff:ff:ff:ff:ff:ff
    inet6 fe80::ba83:3ff:XXXX:XXXX/64 scope link 
       valid_lft forever preferred_lft forever
...

我不明白為什麼。我-vvnetworkd-dispatcher啟動選項中新增了/etc/default/networkd-dispatcher

networkd_dispatcher_args="--run-startup-triggers -vv"

但我看不到任何明確的問題:

# journalctl -b |  grep vlan3110
Dec 01 17:45:17 hce02 networkd-dispatcher[1565]: DEBUG:Running immediate triggers for NetworkctlListState(idx=9, name='vlan3110', type='vlan', operational='degraded', administrative='pending')
Dec 01 17:45:17 hce02 networkd-dispatcher[1565]: DEBUG:Ignoring notification for interface NetworkctlListState(idx=9, name='vlan3110', type='vlan', operational='degraded', administrative='pending') entering state 'pending': no triggers
Dec 01 17:45:17 hce02 networkd-dispatcher[1565]: DEBUG:Ignoring notification for interface NetworkctlListState(idx=9, name='vlan3110', type='vlan', operational='degraded', administrative='pending') entering state 'degraded': no triggers

networkctl輸出如下:

# networkctl status vlan3110
● 9: vlan3110                                                                
             Link File: /run/systemd/network/10-netplan-eno1.link            
          Network File: /run/systemd/network/10-netplan-eno1.network         
                  Type: vlan                                                 
                 State: degraded (configured)
                Driver: 802.1Q VLAN Support                                  
            HW Address: b8:83:03:4d:ca:48 (Hewlett Packard Enterprise)       
                   MTU: 1500 (max: 65535)                                    
  Queue Length (Tx/Rx): 1/1                                                  
      Auto negotiation: yes                                                  
                 Speed: 1Gbps                                                
                Duplex: full                                                 
                  Port: tp                                                   
               Address: fe80::ba83:3ff:fe4d:ca48                             

Dec 01 18:18:08 hce02 systemd-networkd[1444]: vlan3110: netdev ready
Dec 01 18:18:08 hce02 systemd-networkd[1444]: vlan3110: IPv6 successfully enabled
Dec 01 18:18:08 hce02 systemd-networkd[1444]: vlan3110: Link UP
Dec 01 18:18:12 hce02 systemd-networkd[1444]: vlan3110: Gained carrier
Dec 01 18:18:14 hce02 systemd-networkd[1444]: vlan3110: Gained IPv6LL

如果我刪除連結並netplan apply在伺服器完成啟動過程後調用,則 IP 將按預期分配:

# ip link delete dev vlan3110
# netplan apply

有人知道怎麼回事?

相關內容