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

FreeBSD прозрачный мост

Привет всем.

 

Пытаюсь создать прозрачный мост, однако он валится по какой-то не совсем понятной причине.

Статья делаю так:

Цитата

ifconfig bridge create


# ifconfig bridge0 addm fxp0 addm fxp1 up
# ifconfig fxp0 up
# ifconfig fxp1 up

запускаю пинги, 30 пакетов проходит и всё.

 

Топология такова

 

ПК - SWITCH <------>  re0 | FreeBSD | re2 <-----> ноут
10.10.10.98 <-------------------------------------> 10.10.10.70

Мост без IP адресов.

 

Как быть?

Спасибо.

 

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

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


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

в ifconfig -a что видно? в /var/log/messages что?

stp включали?

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


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

1 час назад, NewUse сказал:

в ifconfig -a что видно?

 

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:e6:ba:07:48:c1
    hwaddr 90:e6:ba:07:48:c1
    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
    media: Ethernet autoselect (100baseTX <full-duplex>)
    status: active

re2: 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:e6:ba:07:3d:06
    hwaddr 90:e6:ba:07:3d:06
    nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
    media: Ethernet autoselect (none)
    status: no carrier

bridge0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
    ether 02:41:86:67:4d:00
    nd6 options=9<PERFORMNUD,IFDISABLED>
    groups: bridge 
    id 00:00:00:00:00:00 priority 32768 hellotime 2 fwddelay 15
    maxage 20 holdcnt 6 proto rstp maxaddr 2000 timeout 1200
    root id 00:00:00:00:00:00 priority 32768 ifcost 0 port 0
    member: re2 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
            ifmaxaddr 0 port 3 priority 128 path cost 2000000
    member: re0 flags=143<LEARNING,DISCOVER,AUTOEDGE,AUTOPTP>
            ifmaxaddr 0 port 1 priority 128 path cost 2000000
 

 

 

1 час назад, NewUse сказал:

в /var/log/messages что?

Aug 22 08:54:55 home kernel: re1: link state changed to DOWN
Aug 22 08:54:55 home kernel: re1: link state changed to UP
Aug 22 08:54:55 home kernel: re0: link state changed to UP
Aug 22 08:54:55 home kernel: re2: link state changed to UP
Aug 22 08:54:55 home kernel: blanktime.
Aug 22 08:57:13 home su: administrator to root on /dev/pts/0
Aug 22 08:57:32 home kernel: bridge0: Ethernet address: 02:41:86:67:4d:00
Aug 22 08:57:45 home kernel: re0: promiscuous mode enabled
Aug 22 08:57:45 home kernel: re2: promiscuous mode enabled
Aug 22 08:57:45 home kernel: bridge0: link state changed to UP
Aug 22 08:57:57 home kernel: re0: link state changed to DOWN
Aug 22 08:58:00 home kernel: re0: link state changed to UP
Aug 22 08:58:00 home kernel: re2: link state changed to DOWN
Aug 22 08:58:03 home kernel: re2: link state changed to UP
Aug 22 08:58:30 home kernel: re2: link state changed to DOWN
 

1 час назад, NewUse сказал:

stp включали?

Включал, но с ним он вообще отказывается работать.

 

Повторные
# ifconfig re2 up
# ifconfig re0 up
# ifconfig bridge0 up

 

результатов не дает.

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

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


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

Цитата

Aug 22 08:58:30 home kernel: re2: link state changed to DOWN

это что такое?

 

если один из интерфейсов в дауне то ничего удивительного...

у Вас точно кольца нет?

 

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


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

4 минуты назад, NewUse сказал:

это что такое?

Это загадка. Тот самый интерфейс, который смотрит на ноут  в моей схеме.

 

4 минуты назад, NewUse сказал:

у Вас точно кольца нет?

 

нет. Разве что есть еще 3й интерфейс, по которому идет управление и он находится в тех же подсетях, что и первые 2. Может ли быть из-за этого?

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


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

19 минут назад, default_vlan сказал:

Может ли быть из-за этого?

Да. Выкинул 3-й интерфейс в отдельный vlan и проблема ушла. Теперь буду пробовать поднять все это дела на нетграфе. Может быть у кого есть подсказки? Чем дольше я в него вчитываюсь, тем дольше я в него вчитываюсь и мне все больше становится непонятно.

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


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

23 минуты назад, default_vlan сказал:

Да. Выкинул 3-й интерфейс в отдельный vlan и проблема ушла. Теперь буду пробовать поднять все это дела на нетграфе. Может быть у кого есть подсказки? Чем дольше я в него вчитываюсь, тем дольше я в него вчитываюсь и мне все больше становится непонятно.

Что именно в нетграфе не понятно?

Подгружаешь ng_ether, ng_bridge, ng_eiface.

Цепляешь бридж к ловер хукам интерфейсов, цепляешь к бриджу еифейс, вешаешь на него IP адреса. С интерфейсов адреса предварительно снимаешь, заодно включаешь промиск в ng_ether.

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


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

53 минуты назад, Ivan_83 сказал:

подгружаешь ng_ether, ng_bridge, ng_eiface.

Это в документации.

Делаю по факту скрипт.

 

# cat ng_bridge.sh

#!/bin/sh

ngctl 	mkpeer		re0:		bridge		lower	link0
ngctl 	name		re0:lower	switch

ngctl 	connect		re0:		switch:		upper	link1
ngctl	connect		re2:		switch:		lower	link2
ngctl	connect		re2:		switch:		upper	link3

ngctl	msg		re0:		setpromisc	1
ngctl	msg		re1:		setpromisc	1
ngctl	msg		re0:		setautosrc	0
ngctl	msg		re1:		setautosrc	0

ngctl	mkpeer		switch:		eiface		link5	ether
#ngctl	name		switch:link5	ngeth0

ifconfig re0 up
ifconfig re2 up
Цитата

# ngctl list
There are 6 total nodes:
  Name: ngctl1073       Type: socket          ID: 00000010   Num hooks: 0
  Name: re0             Type: ether           ID: 00000001   Num hooks: 2
  Name: re1             Type: ether           ID: 00000002   Num hooks: 0
  Name: re2             Type: ether           ID: 00000003   Num hooks: 2
  Name: switch          Type: bridge          ID: 00000005   Num hooks: 5
  Name: ngeth0          Type: eiface          ID: 0000000f   Num hooks: 1

 

# ifconfig 

ngeth0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=28<VLAN_MTU,JUMBO_MTU>
	ether 00:00:00:00:00:00
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: Ethernet autoselect (1000baseT <full-duplex>)
	status: active

 

И трафика нет. В первом случае все заработало.

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


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

2 часа назад, Ivan_83 сказал:

подгружаешь ng_ether, ng_bridge, ng_eiface.

Это в документации.

Делаю по факту скрипт.

 

# cat ng_bridge.sh

#!/bin/sh

ngctl 	mkpeer		re0:		bridge		lower	link0
ngctl 	name		re0:lower	switch

ngctl 	connect		re0:		switch:		upper	link1
ngctl	connect		re2:		switch:		lower	link2
ngctl	connect		re2:		switch:		upper	link3

ngctl	msg		re0:		setpromisc	1
ngctl	msg		re1:		setpromisc	1
ngctl	msg		re0:		setautosrc	0
ngctl	msg		re1:		setautosrc	0

ngctl	mkpeer		switch:		eiface		link5	ether
#ngctl	name		switch:link5	ngeth0

ifconfig re0 up
ifconfig re2 up
Цитата

# ngctl list
There are 6 total nodes:
  Name: ngctl1073       Type: socket          ID: 00000010   Num hooks: 0
  Name: re0             Type: ether           ID: 00000001   Num hooks: 2
  Name: re1             Type: ether           ID: 00000002   Num hooks: 0
  Name: re2             Type: ether           ID: 00000003   Num hooks: 2
  Name: switch          Type: bridge          ID: 00000005   Num hooks: 5
  Name: ngeth0          Type: eiface          ID: 0000000f   Num hooks: 1

 

# ifconfig 

ngeth0: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
	options=28<VLAN_MTU,JUMBO_MTU>
	ether 00:00:00:00:00:00
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: Ethernet autoselect (1000baseT <full-duplex>)
	status: active

 

И трафика нет. В первом случае все заработало.

 

Что интересно, если стать читером и влезть в /usr/share/examples/netgraph/ether.bridge прописать туда свои интерфейсы, то все вроде бы даже гулять начинает, но интерфейс в ifconfig'е не создается.

 

завел. Банальная невнимательность - 

ngctl	msg		re0:		setpromisc	1
ngctl	msg		re2:		setpromisc	1
ngctl	msg		re0:		setautosrc	0
ngctl	msg		re2:		setautosrc	0

однако, снифать трафик на созданном ngeth0 не получается (((

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


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

upper тебе не нужны.

мак пропиши на ngeth0.

снифать наверное на физическом надо, я не смотрел как ngeth0 внутри устроен.

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


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

14 часов назад, Ivan_83 сказал:

upper тебе не нужны.

а что есть upper? Как я понял, это верхние протоколы модели OSI. Или нет?

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


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

4 часа назад, default_vlan сказал:

а что есть upper? Как я понял, это верхние протоколы модели OSI. Или нет?

По этим хукам пакеты идут в/из ОС, ловер - это сразу из/в сетевуху.

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


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

Хорошо. Мост завелся, но как-то не айс с ним работать.
Другой вопрос, дабы не делать новые темы. Как принять трафик с зеркалированного порта cisco на сетевую карту в FreeBSD?

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


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

Там сам ng_bridge не особо, у него глобальная блокировка на таблице маков/портов, я одно время думал как исправить потом забил.

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

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


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

10 минут назад, Ivan_83 сказал:

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

В том и дело, что включал, но результат тот же, что и в случае ранее - интерфейс работает и гаснет.
 

До включения tcpdump

re2: flags=28943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,PPROMISC> metric 0 mtu 1500
	options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
	ether 90:e6:ba:07:3d:06
	hwaddr 90:e6:ba:07:3d:06
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: Ethernet autoselect (1000baseT <full-duplex>)
	status: active

После попытки включения

re2: flags=28943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST,PPROMISC> metric 0 mtu 1500
	options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE>
	ether 90:e6:ba:07:3d:06
	hwaddr 90:e6:ba:07:3d:06
	nd6 options=29<PERFORMNUD,IFDISABLED,AUTO_LINKLOCAL>
	media: Ethernet autoselect (none)
	status: no carrier

dmesg

re2: link state changed to UP
re2: link state changed to DOWN

 

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


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

24 минуты назад, default_vlan сказал:

В том и дело, что включал, но результат тот же, что и в случае ранее - интерфейс работает и гаснет.

Это к физике/сетевухе/дровам.

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


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

26 минут назад, Ivan_83 сказал:

Это к физике/сетевухе/дровам.

Тут не соглашусь. Это что-то внутрисистемное. буду думать, только хз в какую сторону

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


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

Нетграфовый мост не умеет ложить линки.

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


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

Join the conversation

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

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

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

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

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

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

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