Software bridge ar Linux

Submitted by Jancis on Mon, 10/03/2005 - 14:52

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.