(Изначально я разместил его на StackOverflow. Я перемещаю его в сетевую инженерию, а затем сюда.)
У меня роутер TP-LINK WR841N v9 и я установил прошивку OpenWRT CHAOS CALMER (15.05.1, r48532)
.
у меня есть /etc/config/network
содержание:
config interface 'lan'
option force_link '1'
option type 'bridge'
option proto 'static'
option ipaddr '10.15.252.3'
option netmask '255.255.254.0'
option gateway '10.15.252.1'
option ifname 'eth0 eth1'
Вот результат ip link ls
:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-lan state UP mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc fq_codel master br-lan state DOWN mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:25 brd ff:ff:ff:ff:ff:ff
4: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
5: br-lan: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
У меня есть два компьютера, подключаемые кабелем к 2 из 4 портов LAN. Скажем компьютер A
и B
.
A
продолжает звонить B
и это хорошо работает. tcpdump
перехватить трафик с моста br-lan
: tcpdump -i br-lan -n 'arp or icmp'
. Я видел arp
трафик, но есть нет ICMP трафик.
Я попытался настроить правила iptables для блокировки трафика на B
в обоих INPUT
и output
цепь, и она не работает.
Вот результат команды brctl
и ip
:
bridge name bridge id STP enabled interfaces
br-lan 7fff.c46e1fb68e24 no eth0
eth1
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
RX: bytes packets errors dropped overrun mcast
63107 580 0 0 0 0
TX: bytes packets errors dropped carrier collsns
63107 580 0 0 0 0
2: eth0: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc fq_codel master br-lan state UP mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
64256004 445450 0 6 0 0
TX: bytes packets errors dropped carrier collsns
8775980 43685 0 0 0 0
3: eth1: <NO-CARRIER,BROADCAST,MULTICAST,PROMISC,UP> mtu 1500 qdisc fq_codel master br-lan state DOWN mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:25 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
4: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
0 0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
0 0 0 0 0 0
5: br-lan: <BROADCAST,MULTICAST,PROMISC,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default
link/ether c4:6e:1f:b6:8e:24 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
57777761 444757 0 60579 0 0
TX: bytes packets errors dropped carrier collsns
8871188 44499 0 0 0 0
Наверняка много TX
и RX
пакеты на интерфейсах.
Итак, мои вопросы:
1. Как использовать tcpdump для передачи трафика через мост br-lan
? (Мост работает на уровне 2, и он должен работать, не так ли?)
2. Если я хочу зеркалировать входящий / исходящий трафик компьютера B на другой порт (например, wan
порт), что мне делать? (Я пытался использовать это инструмент зеркалирования портов, Но это не работает.)
(Я хочу попытаться ebtables
, но мне не удалось установить его на маршрутизатор из-за недостатка места. Также я не смог найти инструмент bridge
проверить прямую БД на мосту.)
Я нашел еще одну соответствующую тему: Tcpdump / Iptables на интерфейсе моста без назначенного IP-адреса и tcpdump на интерфейсе моста (virbr) не получает пакетов, предназначенных для одного из его адресов, но это не работает.
Я перенастроил маршрутизатор, чтобы сделать следующее:
1. Назначьте оба eth0 и eth1 преодолеть br-lan
;
2. компьютер с кабелем B к eth1 порт (бледный порт);
3. В файле конфигурации зеркалирования портов перенаправьте трафик от eth1 к IP А.
Теперь я могу слушать весь трафик в / из B. И, конечно же, tcpdump также может захватывать поток трафика через br-lan.