Перейти к содержимому
Калькуляторы

Не работает агрегация каналов в FreeBSD 9.2.

Добрый день,

Корректно не работает Lagg в FreeBSD 9.2. Самое интересное что если повесить tcpdump на интерфейс lagg0 то все начинает работать, то есть получается пока не переключить интерфейс lagg0 в promisc mode он не работает.

 

sysctl не вносились ни какие изменения.

 

В чем может быть проблема??

 

#ifconfig
re0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
       ether 90:2b:34:d6:bb:42
       inet6 fe80::922b:34ff:fed6:bb42%re0 prefixlen 64 scopeid 0x1
       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
       media: Ethernet autoselect (100baseTX <full-duplex>)
       status: active
re1: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
       ether 90:2b:34:d6:bb:42
       inet6 fe80::922b:34ff:fed6:bb42%re1 prefixlen 64 scopeid 0x2
       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
       media: Ethernet autoselect (100baseTX <full-duplex>)
       status: active
lagg0: flags=8943<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
       ether 90:2b:34:d6:bb:42
       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
       media: Ethernet autoselect
       status: active
       laggproto lacp lagghash l2,l3
       laggport: re1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
       laggport: re0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
vlan172: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=3<RXCSUM,TXCSUM>
       ether 90:2b:34:d6:bb:42
       inet 172.16.0.50 netmask 0xffff0000 broadcast 172.16.255.255
       inet6 fe80::922b:34ff:fed6:bb42%vlan172 prefixlen 64 scopeid 0x5
       nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
       media: Ethernet autoselect
       status: active
       vlan: 172 parent interface: lagg0

rc.conf

ifconfig_re0="up"
ifconfig_re1="up"

cloned_interfaces="lagg0 vlan172"
ifconfig_lagg0="laggproto lacp laggport re0 laggport re1 lagghash l2,l3"

ifconfig_vlan172="inet 172.16.0.50/16 vlan 172 vlandev lagg0"

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Оформляйте PR, что не корректно работает в Лагге режим lagghash l2,l3

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня вот так вот работает прекрасно:

lagg0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
       options=4219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,VLAN_HWTSO>
       ether 00:1e:67:3c:b8:1f
       media: Ethernet autoselect
       status: active
       laggproto lacp lagghash l2,l3,l4
       laggport: em1 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>
       laggport: em0 flags=1c<ACTIVE,COLLECTING,DISTRIBUTING>

 

Автору можно попробовать l4 добавить.

 

И второе, у автора похоже очень старый свитч все это принимает, прошивка в нем последняя? Там косяков быть не может?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Кстати, да, огласите модель коммутатора, прошивку и как на нем лагг виден?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Коммутатор D-Link DES-3200-10, прошивку сразу же обновил на нем. ЛАГ настроен l2+l3 тип LACP.

lagghash пробовал l2 и l2,l3,l4 ни чего не изменяется.

#sysctl -a | grep lagg
net.link.lagg.failover_rx_all: 0
net.link.lagg.default_use_flowid: 1
net.link.lagg.lacp.debug: 0
net.link.lagg.0.use_flowid: 1
net.link.lagg.0.count: 2
net.link.lagg.0.active: 2
net.link.lagg.0.flapping: 0
net.link.lagg.0.lacp.lacp_strict_mode: 1
net.link.lagg.0.lacp.debug.rx_test: 0
net.link.lagg.0.lacp.debug.tx_test: 0

Побывал изменить use_flowid на 0, то же не помогает, уже ни знаю куда копать.

На этой машине стояла до этого OpenBSD, trunk завелся без всяких проблем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Включите промиск и не парьтесь.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А сетевые сменить не вариант ? У меня правда не 9.2 а 9.1 но и igb и bce карты проблем не вызывают с LAGG...

 

Вы когда lagg собираете, там мак на одной карте меняется. Возможно без промиска оно не работает на этой re... ну как вариант.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Еще попробуйте "lagghash l2,l3" из конфига убрать

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

А сетевые сменить не вариант ? У меня правда не 9.2 а 9.1 но и igb и bce карты проблем не вызывают с LAGG...

 

Вы когда lagg собираете, там мак на одной карте меняется. Возможно без промиска оно не работает на этой re... ну как вариант.

 

присоединяюсь. 9.1 работает без проблем.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У меня на 9.2 работает нормально.

Только "lagghash l2,l3" не прописано в rc.conf и сетевые Intel.

И свитч должен быть в passive mode.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Сетевые интерфейсы встроенные и заменить их нет возможности. Заметил забавную штуку, что сетевушки получают один MAC при загрузке сразу же.

#dmesg
****
re0: <RealTek 8168/8111 B/C/CP/D/DP/E/F/G PCIe Gigabit Ethernet> port 0xe000-0xe0ff mem 0xf0104000-0xf0104fff,0xf0100000-0xf0103fff irq 16 at device 0.0 on pci2
re0: Using 1 MSI-X message
re0: Chip rev. 0x2c800000
re0: MAC rev. 0x00100000
miibus0: <MII bus> on re0
rgephy0: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 1 on miibus0
rgephy0:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT, 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, 1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow
re0: Ethernet address: 90:2b:34:d6:bb:42
pcib3: <ACPI PCI-PCI bridge> irq 17 at device 28.5 on pci0
pci3: <ACPI PCI bus> on pcib3
re1: <RealTek 8168/8111 B/C/CP/D/DP/E/F/G PCIe Gigabit Ethernet> port 0xd000-0xd0ff mem 0xf0004000-0xf0004fff,0xf0000000-0xf0003fff irq 17 at device 0.0 on pci3
re1: Using 1 MSI-X message
re1: Chip rev. 0x2c800000
re1: MAC rev. 0x00100000
miibus1: <MII bus> on re1
rgephy1: <RTL8169S/8110S/8211 1000BASE-T media interface> PHY 1 on miibus1
rgephy1:  none, 10baseT, 10baseT-FDX, 10baseT-FDX-flow, 100baseTX, 100baseTX-FDX, 100baseTX-FDX-flow, 1000baseT, 1000baseT-master, 1000baseT-FDX, 1000baseT-FDX-master, 1000baseT-FDX-flow, 1000baseT-FDX-flow-master, auto, auto-flow
re1: Ethernet address: 90:2b:34:d6:bb:42
****

Походу дело в дровах, скачал свежи драйвера с Realtek.com.tw. Сейчас пере собираю ядро, о результатах напишу )).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Заметил еще одно, что после создания ЛАГа второй сетевой адаптер запоминает МАК первого и даже после запуска другой ОС он показывает один и тот же МАК. это БАГ или нормальное поведение сетевого адаптера.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Поставьте внешнюю сетевую Intel дополнительно в свободный PCI-E слот и проблем не будет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Заметил еще одно, что после создания ЛАГа второй сетевой адаптер запоминает МАК первого и даже после запуска другой ОС он показывает один и тот же МАК. это БАГ или нормальное поведение сетевого адаптера.

 

Это нормальное поведение. Когда сформирован Lagg обе сетевые карты имеют один и тот же MAC.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

vlad11, естественно, что при создании lagg оба сетевых адаптера получают один MAC. Но тут он запоминается самим адаптером, при загрузке с любого LifeCD он определят один и тот же MAC походу БАГ сетевых адаптеров.

Написал в службу поддержки Gigabyte и получил вот такой ответ:

Доступность драйверов конкретного чипсета для ОС семейства Linux зависит от политики, которой придерживается компания-разработчик чипсетов. Необходимые драйверы для ОС Linux рекомендуем найти и загрузить с официального сайта производителя, либо воспользоваться услугами иных источников.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Покажите

pciconf -lv | egrep -A 4 re0
pciconf -lv | egrep -A 4 re1

 

А потом сделайте PR о некорректности работы lagg на чипах Риалтека. Вывод команд выше приложите.

 

Upd. Вспомнил, lagg на Реалтеках под Линуксом аналогично себя ведет, обе сетевые имеют одинаковый МАС, даже если зайдешь в БИОС.

Проверял МАСи на коммутаторе, куда включена машинка.

Изменено пользователем vlad11

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.