abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 16:22 | Nová verze

    Byla vydána verze 1.90.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.

    Ladislav Hagara | Komentářů: 0
    dnes 16:11 | Nová verze

    GNUnet (Wikipedie) byl vydán v nové major verzi 0.25.0. Jedná se o framework pro decentralizované peer-to-peer síťování, na kterém je postavena řada aplikací.

    Ladislav Hagara | Komentářů: 0
    dnes 12:11 | Nová verze

    Byla vydána nová major verze 7.0 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Nově je postavena je na Debianu 13 (Trixie) a GNOME 48 (Bengaluru). Další novinky v příslušném seznamu.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | IT novinky

    Společnost Meta na dvoudenní konferenci Meta Connect 2025 představuje své novinky. První den byly představeny nové AI brýle: Ray-Ban Meta (Gen 2), sportovní Oakley Meta Vanguard a především Meta Ray-Ban Display s integrovaným displejem a EMG náramkem pro ovládání.

    Ladislav Hagara | Komentářů: 0
    dnes 01:11 | Nová verze

    Po půl roce vývoje od vydání verze 48 bylo vydáno GNOME 49 s kódovým názvem Brescia (Mastodon). S přehrávačem videí Showtime místo Totemu a prohlížečem dokumentů Papers místo Evince. Podrobný přehled novinek i s náhledy v poznámkách k vydání a v novinkách pro vývojáře.

    Ladislav Hagara | Komentářů: 4
    včera 16:22 | Nová verze

    Open source softwarový stack ROCm (Wikipedie) pro vývoj AI a HPC na GPU od AMD byl vydán ve verzi 7.0.0. Přidána byla podpora AMD Instinct MI355X a MI350X.

    Ladislav Hagara | Komentářů: 0
    včera 15:22 | Nová verze

    Byla vydána nová verze 258 správce systému a služeb systemd (GitHub).

    Ladislav Hagara | Komentářů: 5
    včera 15:11 | Nová verze

    Byla vydána Java 25 / JDK 25. Nových vlastností (JEP - JDK Enhancement Proposal) je 18. Jedná se o LTS verzi.

    Ladislav Hagara | Komentářů: 0
    včera 14:44 | Humor

    Věra Pohlová před 26 lety: „Tyhle aféry každého jenom otravují. Já bych všechny ty internety a počítače zakázala“. Jde o odpověď na anketní otázku deníku Metro vydaného 17. září 1999 na téma zneužití údajů o sporožirových účtech klientů České spořitelny.

    Ladislav Hagara | Komentářů: 8
    včera 11:33 | Zajímavý článek Ladislav Hagara | Komentářů: 0
    Jaké řešení používáte k vývoji / práci?
     (50%)
     (58%)
     (0%)
     (8%)
     (12%)
     (4%)
     (15%)
     (4%)
     (12%)
    Celkem 26 hlasů
     Komentářů: 3, poslední dnes 14:58
    Rozcestník

    Nfsroot přes rozhraní síťového bridge

    27.4.2012 23:52 | Přečteno: 1096× | Linux | Výběrový blog | poslední úprava: 28.4.2012 00:05

    Je tak trochu šílenost, uznávám. Ale přesto je to věc, pro kterou mám svůj use case.

    Situace: bootujete z eth0 a chcete tuto síť dále poskytovat na eth1. Používání jiného rozsahu pro eth1 se vám nelíbí.

    Hlavním problémem je to, že není dobře možné dát rozhraní eth0 a eth1 do bridge br0 s přesunem síťové adresy z eth0 na br0, aniž by tam byl nějaký krátký moment, kdy nebude kořenový (síťový) souborový systém dostupný. Pokud si myslíte, jako já, že to přece musí dát, tak věřte, že si to vždycky někam sáhne a umře to :-)

    ebtables

    Po troše googlení jsem nalezl jedno řešení. Bylo jím ebtables. Pomocí ebtables je možné pozměnit routovací pravidla bridge tak, aby vznikl most mezi eth0 a eth1, ale pakety na IP adresu patřící eth0 se nesměrovaly skrz bridge.

    Zde je skript, který jsem nakonec dal do kupy, i když teď si nejsem stoprocentně jist, že toto funguje:

    #!/bin/sh
    NFSIF="eth0"
    SECIF="eth1"
    BRIF="br0"
    
    set -e
    
    nfsmac=$(ip link show "$NFSIF" | awk 'NR==2 { print $2 }')
    nfsip=$(ip addr show dev "$NFSIF" | awk '$1=="inet" { print gensub(/\/.+/, "", "g", $2) }')
    
    for ip in "$nfsip"; do
            ebtables -t broute -A BROUTING -p ipv4 -i "$NFSIF" --ip-dst "$ip" -j DROP
            ebtables -t broute -A BROUTING -p arp -i "$NFSIF" --arp-ip-dst "$ip" -j DROP
    done
    
    ebtables -t broute -A BROUTING -p arp -i "$NFSIF" -d "$nfsmac" -j DROP
    
    brctl addbr "$BRIF"
    brctl addif "$BRIF" "$SECIF"
    ip link set "$BRIF" up
    brctl addif "$BRIF" "$NFSIF"
    

    Funguje to, až na jeden defekt. IP adresa na rozhraní eth0 není dostupná z druhé strany bridge, tedy z eth1. A celé je to takový hnusný hack, takže jsem hledal řešení jiné.

    initrd

    Nejelegantnějším řešením je nakonec initrd. Vytvořil jsem si dostatečně velký prázdný soubor, naformátoval jsem jej na ext2 a po připojení jsem vytvořil adresáře /bin a /dev. Do /dev jsem umístil null a console. Emergnul jsem si statický busybox a ten jsem strčil do /bin. Tam jsem na něj udělal symlinky sh, ip, brctl. Pak jsem napsal skript /linuxrc:

    #!/bin/sh
    
    PATH="/bin"
    
    MYADDR="10.10.10.2/24"
    GW="10.10.10.3"
    
    #ip addr flush dev eth0
    ip link set eth0 up
    ip link set eth1 up
    
    brctl addbr br0
    brctl addif br0 eth0
    brctl addif br0 eth1
    
    ip addr add $MYADDR dev br0
    ip link set br0 up
    ip route add default via $GW
    

    Na závěr jsem image odpojil a zkomprimoval. A funguje to. Z hlediska nastavení PXE stačilo přidat jádru argument initrd=/tftp-cesta-k-souboru/initrd.img.gz a bylo.

    Třeba se to někomu bude hodit :-)

           

    Hodnocení: 100 %

            špatnédobré        

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    19.9.2020 23:10 frr | skóre: 34
    Rozbalit Rozbalit vše Re: Nfsroot přes rozhraní síťového bridge
    Omluva za exhumaci... for the record: během posledního asi roku jsem se pokusil o něco velmi podobného na bázi Debianu 9 a rozpracoval jsem to myslím do větších podrobností :-D
    [:wq]
    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.