Configuração do FreeBSD Nic - Dual NICs com lagg

2

Eu tenho um servidor rodando o FreeBSD 9.0. Ele tem dois NICs usando os drivers de rede igb. Foi-me dado um intervalo de IPs, por exemplo, eu vou apenas fazer alguns endereços IP, então vamos dizer 192.168.0.24/29 com um IP de transmissão de 192.168.0.31. O gateway está em 192.168.0.25.

Eu tenho a configuração rc.conf da seguinte forma:

defaultrouter="192.168.0.25"
hostname="web01.dev.example.com"
ifconfig_igb0="up"
ifconfig_igb1="up"
cloned_interfaces="lagg0"
ifconfig_lagg0="laggproto failover laggport igb0 laggport igb1 192.168.0.24/29"

Quando eu digito ifconfig , obtenho

 igb0: flags=8843<UP,BROADCST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=401bb<RXCSUM, TXCSUM, VLAN_MTU, VLAN_HWTAGGING, JUMBO_MTU, VLAN_HWCSUM, TSO4, VLAN_HWTSO>
    ether XX:XX:XX:XX:XX:XX
    inet6 XXXX::XXX:XXXX:XXXX:XXXX%igb0 prefixlen 64 scopeid 0x1
nd6 options=29<PERFORMNUD. IFDISABLED< AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active

igb1: flags=8843<UP,BROADCST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=401bb<RXCSUM, TXCSUM, VLAN_MTU, VLAN_HWTAGGING, JUMBO_MTU, VLAN_HWCSUM, TSO4, VLAN_HWTSO>
    ether XX:XX:XX:XX:XX:XX
    inet6 XXXX::XXX:XXXX:XXXX:XXXX%igb0 prefixlen 64 scopeid 0x1
nd6 options=29<PERFORMNUD. IFDISABLED< AUTO_LINKLOCAL>
media: Ethernet autoselect (1000baseT <full-duplex>)
status: active

lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options = 600003<RXCSUM, TXCSUM, RXCSUM_IPV6, TXCSUM_IPV6>
    inet6 ::1 prefixlen 128
    inet6 XXXX:XXXXX prefixlen 62 scipeid 0x5
    inet 127.0.0.1 netmask 0xff000000

lagg0 flags=8843<UP,BROADCST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    options=401bb<RXCSUM, TXCSUM, VLAN_MTU, VLAN_HWTAGGING, JUMBO_MTU, VLAN_HWCSUM, TSO4, VLAN_HWTSO>
ether XX:XX:XX:XX:XX:XX
inet6: XXXX::XXX:XXXX:XXXX:XXXX%lagg0 prefixlen64 scopeid 0x6
inet 192.168.0.24 netmask 0xffffffff8 broadcast 192.168.0.31
nd6 options=29 <PERFORMNUM IFDISABLED AUTO_LINKLOCAL>
media: Ethernet autoselect
status: active
laggproto failover lagghash 12,13,14
laggport: igb1 flags=0<>
laggport: igb0 flags=5<MASTER,ACTIVE>

O que parece ótimo, as interfaces estão ativas e ativas. Eu vou pingar o gateway e obter 100% de perda de pacotes. Eu tentei reiniciar o serviço netif e é bastante normal, embora como

ifconfig: create: bad value 

aparece em lagg0, igb1 e igb0 e mostra status: no carrier

mas se eu digitar ifconfig novamente após a reinicialização, ele mostrará status: active , mas ainda sem conexão com a internet e ainda sem a capacidade de executar ping no gateway.

Eu já referenciei vários sites, mas pouquíssimos referenciam o dual nic, lagg setup com ipv4 e ipv6 e estou praticamente perdido sobre como corrigir o problema. Qualquer ideia sobre onde começar seria ótimo.

    
por Drazion 10.04.2013 / 18:26

1 resposta

0

Usando o conselho de Matt, consegui fazer com que igb0 e igb1 trabalhassem separadamente.
Depois de confirmar que eu poderia fazer ping no gateway com cada interface de forma independente, deixei cair a interface lagg de volta, fiz um service netif restart seguido por um service routing restart e foi capaz de pingar o gateway novamente.

Quanto ao motivo pelo qual eles não estavam trabalhando juntos usando a configuração original, não consegui dizer. A única coisa que eu poderia imaginar é que ambas as interfaces, igb0 e igb1, estavam tentando se conectar a um IP e alterá-las para baixo, forçando-as a olhar para a interface lagg0 para conectividade.

    
por 12.04.2013 / 13:41