Trying to make a Host into a gigabit hub for testing
Shawn Saunders
saundersconsult at hotmail.com
Wed Oct 19 07:58:28 PDT 2005
I am setting up a test environment with multiple IDS's. ngctl looks like a
solution but it is not broadcasting all packets to all interfaces as the
documentation appears to state it should. I've probably made some error in
configuration.
My goal is to put em0 into a spanned port in promiscuous mode and broadcast
all traffic from that port out the other network interfaces. I plan on
having em0 (gigabit) and 6 other gigabit interfaces. Each will then echo
the same traffic to six other machines (IDS's) for testing.
The proof of concept with a gigabit (EM0) and 4 10/100 ethernets (sfx). The
10/100's will be replaced for implementation.
Any help would be appreciated. My config follows:
ifconfig sf0 up
ifconfig sf1 up
ifconfig sf2 up
ifconfig sf3 up
ifconfig em0 up
kldload ng_ether.ko
kldload ng_one2many.ko
kldload ng_fec.ko
ngctl mkpeer fec dummy fec
ngctl msg fec0: add_iface '"em0"' ; em0 is the port connected to traffic
(sniffing)
ngctl msg fec0: set_mode_inet
ngctl mkpeer fec0: one2many upper one
ngctl connect fec0: fec0:upper lower many0
ngctl connect sf0: fec0:upper lower many1
ngctl connect sf1: fec0:upper lower many2
ngctl connect sf2: fec0:upper lower many3
ngctl connect sf3: fec0:upper lower many4
ngctl msg sf0: setpromisc 1
ngctl msg sf0: setautosrc 0
ngctl msg sf1: setpromisc 1
ngctl msg sf1: setautosrc 0
ngctl msg sf2: setpromisc 1
ngctl msg sf2: setautosrc 0
ngctl msg sf3: setpromisc 1
ngctl msg sf3: setautosrc 0
ngctl msg em0: setpromisc 1 ; I have tried with this set and not.
ngctl msg em0: setautosrc 0 ; I have tried with this set and not.
ngctl msg fec0:upper setconfig "{ xmitAlg=2 failAlg=1 enabledLinks=[1 1 1 1
1] }"
ifconfig fec0 -arp up ; I have tried with this set and not.
Am I missing something?
Shawn Saunders
More information about the freebsd-net
mailing list