Gadījās vajadzība uztaisīt software bridge uz linux. Windows XP piedāvā līdzīgu fīču, tātad tādai jābūt arī uz linux. Meklēju līdz atradu:
Ļoti labs materiāls: http://www.faqs.org/docs/Linux-HOWTO/Ethernet-Bridge-netfilter-HOWTO.html
Vispirms vajag bridge atbalstu kodolā. Tā kā testam izmantoju 2.6.11 kodolu, tad atbalsts bija jau iebūvēts. Tiem kam nav šādas iespējas, jāpiepačo kodols ar kodu no http://bridge.sourceforge.net/.
Tad "jādabū" bridge-utils ar komandām "urpmi bridge-utils" / "yum install bridge-utils" / "apt-get install bridge-utils".
Tests:
-
# brctl addbr br0
# brctl stp br0 off
# brctl addif br0 eth0
# brctl addif br0 eth1
# ifconfig eth0 down
# ifconfig eth1 down
# ifconfig eth0 0.0.0.0 up
# ifconfig eth1 0.0.0.0 up
# ifconfig br0 192.168.0.2 up
Šis variants strādās līdz paņemsim "service network restart" vai vienkārši līdz sistēmas pārlādei. Lai to padarītu permanentu, jārediģē interfeisu inicializācijas faili:
-
# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=ETHER
BRIDGE=br0
ONBOOT=yes
# cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=ETHER
BRIDGE=br0
ONBOOT=yes
# cat /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
TYPE=bridge
BOOTPROTO=static
IPADDR=192.168.0.2
NETMASK=255.255.255.0
NETWORK=192.168.0.0
BROADCAST=192.168.0.255
ONBOOT=yes
DELAY=0
STP=off
MII_NOT_SUPPORTED=no
Rezultāts skaists, tagad var ar iptables noraut šo to no cauri ejošā trafika, to sašeipot un operēt ar to kā grib.
Piezīme: kā jau teikts augstākminētajā e-resursā: Šis projekts nav veidots ar mērķi aizstāt bridžus, tas ir linux funkcionalitātes papildinājums, bet pie lielas noslodzes šāds risinājums var arī nopietni bremzēt tīklu.