Debian 10에서 NIC 본딩을 작동할 수 없습니다.

Debian 10에서 NIC 본딩을 작동할 수 없습니다.

Proxmox를 설치하고 싶은 Broadcom Limited NetExtreme II BCM5716 기가비트 이더넷 NIC와 Debian 10을 갖춘 Dell PowerEdge T410 서버가 있습니다. 내 홈 네트워크는 VLAN 및 링크 통합을 지원하는 다양한 스위치로 구성되어 있으며 모두 OpenWrt에서 관리됩니다. T410 서버에서 기본 24포트 스위치(Netgear GS724T)로 2Gbs LACP/802.3ad(인터페이스 본딩) 연결을 구성하고 싶습니다. 추가적으로, OpenWrt 라우터에서 24포트 스위치를 통해 Proxmox의 VM으로 VLAN 트렁킹을 전달하고 싶습니다. 그러면 Debian 호스트를 자체 VLAN에 유지하면서 특정 VLAN에 VM을 배치할 수 있습니다. 일반적으로 기본 VLAN 스위치에서 처리됩니다. 내 기억이 맞다면?

새 OS를 설치한 후 가장 먼저 하는 일은 어떤 인터페이스가 있는지 확인하는 것입니다. 데비안은 기본적으로 net-tools를 설치하지 않지만네트워크 제어다음 인터페이스가 표시됩니다.

IDX     Link    Type        OPERATIONAL     SETUP
1       lo      loopback    n/a             unmanaged
2       eno1    ether       n/a             unmanaged
3       eno2    ether       n/a             unmanaged

net-tools를 설치한 후 다음 메시지가 나타납니다.ifconfig-a:

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.254.123  netmask 255.255.255.0  broadcast 192.168.254.15
        inet6 fe80::d6ae:52ff:fe98:d5a4  prefixlen 64  scopeid 0x20<link>
        ether d4:ae:52:98:d5:a4  txqueuelen 1000  (Ethernet)
        RX packets 650  bytes 469142 (458.1 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 499  bytes 54964 (53.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

eno2: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether d4:ae:52:98:d5:a5  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

다음으로 바인딩 패키지를 설치했습니다.sudo apt-get ifenslave 설치. 그러면 나는 다음을 가지고 있습니다/etc/네트워크/인터페이스문서:

allow-hotplug eno1
iface eno1 inet dhcp

allow-hotplug eno2
iface eno2 inet dhcp

# LAG
auto bond0
iface bond0 inet dhcp
    bond-mode 802.3ad
    bond-slaves eno1 eno2
    bond-miimon 100
    bond-downdelay 200
    bond-updelay 200
    bond-lacp-rate 1
    bond-xmit-hash-policy layer2+3

그러면 다음과 같은 출력이 생성됩니다.

root@T410-Server:/home/will# ifup bond0
Internet Systems Consortium DHCP Client 4.4.1
Copyright 2004-2018 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/bond0/d4:ae:52:98:d5:a4
Sending on   LPF/bond0/d4:ae:52:98:d5:a4
Sending on   Socket/fallback
Created duid "\000\001\000\001'\373/w\324\256R\230\325\244".
DHCPDISCOVER on bond0 to 255.255.255.255 port 67 interval 6
DHCPDISCOVER on bond0 to 255.255.255.255 port 67 interval 12
DHCPOFFER of 192.168.254.123 from 192.168.254.1
DHCPREQUEST for 192.168.254.123 on bond0 to 255.255.255.255 port 67
DHCPACK of 192.168.254.123 from 192.168.254.1
Timeout too large reducing to: 2147483646 (TIME_MAX - 1)
bound to 192.168.254.123 -- renewal in 2147483648 seconds.

하지만 인터페이스를 닫고 복원하면ifdown/ifup또는 간단히 네트워크 서비스를 다시 시작하세요.systemctl 네트워크 서비스 다시 시작다음과 같은 오류 메시지가 나타납니다.

bond0: invalid new link 3 on slave eno2

내가 뭘 잘못했나요? 나는 그것을 작동시키려고 수많은 시간을 보냈지만 내가 따랐던 가이드 중 어느 것도 효과가 없었습니다. 이러한 질문을 제쳐두고, 링크 통합이 실패할 경우 eno1에서 단일 1Gbps 연결로 대체를 어떻게 설정합니까?

마지막으로 호스트 서버가 하나의 VLAN에 있고 VLAN 트렁크가 가상 머신이 있는 Proxmox로 전달되도록 VLAN을 어떻게 설정합니까? 스위치에 PVID(일명 기본 VLAN)를 설정했기 때문에 서버가 필요한 VLAN을 자동으로 수신할 것이라고 가정합니다. 이것이 올바른 방법입니까? 나는 이 예를 읽었습니다.여기데비안 위키에서. 이 설정은 하나 이상의 포트에서 VLAN 트렁크 연결을 수신하고 이를 다른 포트에서 태그 해제하는 데 사용됩니까? 그렇다면 이것은 나에게 필요한 것이 아닙니다. 반면, 예제의 구걸 부분에서는 제가 주의 깊게 살펴보고 있는 NIC 본딩을 다루고 있지만 여전히 제대로 작동하지 않습니다.

답변1

eno2에서 dhcp를 비활성화해 보셨나요?

allow-hotplug eno2
iface eno2 inet manual

관련 정보