Netplan:VLAN 子接口上的两个主 IP

Netplan:VLAN 子接口上的两个主 IP

以下 Netplan 配置导致其中一个 IP 成为主 IP(另一个成为次 IP):

vlans:
    vlan10:
        addresses:
        - 1.1.1.1/24
        - 1.1.1.2/24
        dhcp4: false
        dhcp6: false
        id: 10
        link: eth1

我怎么有2基本的该子网/VLAN 中的 IP?(显然不是在单个接口上,这是不可能的)例如使用预先 Netplan 网络配置,我能够在同一个 VLAN 上创建看起来像 2 个子接口的东西,每个子接口在同一个子网中都有自己的(主)IP,显示在 ifconfig 输出中:

eth1      Link encap:Ethernet  HWaddr 00:0C:29:DB:27:4F
          inet6 addr: fe80::20c:29ff:fedb:274f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth1.10   Link encap:Ethernet  HWaddr 00:0C:29:DB:27:4F
          inet addr:50.0.10.254  Bcast:50.0.10.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fedb:274f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

eth1.10:0 Link encap:Ethernet  HWaddr 00:0C:29:DB:27:4F
          inet addr:50.0.10.253  Bcast:50.0.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

但是 Netplan 的类似配置只添加了其中一个子接口/IP,由于某种原因忽略/拒绝另一个。可以将这两个 IP 定义为 VRRP VIP,但也许有更自然的方法?

提前致谢!

更新:看起来上面的 eth1.10:0 之类的虚拟接口是从 Netplan v0.100 / Ubuntu 20.04 开始通过标签支持的功能(我的是带有 Ubuntu 18 的 v0.99,我不允许升级它来尝试一下):https://bugs.launchpad.net/ubuntu/+source/nplan/+bug/1743200 这部分回答了我的问题,所以关于如何拥有 2基本的欢迎使用单个服务器上子网/VLAN 中的 IP。

答案1

每个接口只有一个主 IP。此 IP(与辅助 IP 不同)用作本地生成的传出流量的源 IP。如果所有 IP 都来自同一子网,则此方法有效。如果配置包含来自多个子网的多个 IP,则根据路由表选择本地生成的流量的源 IP。

如果要配置 VRRP,则至少需要 2 个主机,每个主机在同一个子网中都有一个(主 IP)。第三个 IP 在 VRRP 守护进程中配置(在 ubuntu 上,例如keepalivedhaproxy),而不是在操作系统级别。

根据 ubuntu 的具体版本,可能需要操作系统级别的一些附加参数(例如 sysctl 中的 net.ipv4.ip_nonlocal_bind)。

Keepalived仅关心路由,同时haproxy终止 tcpsession。

相关内容