Fórum Root.cz
Hlavní témata => Sítě => Téma založeno: greP 18. 01. 2011, 01:29:16
-
Resim ted takovej problem. Potreboval bych v linuxu (debian squeeze) mit na jednom fyzickym adapteru dva virtualni, ale i na 2. sitovy vrstve. Tzn. eth0:0, eth0 neresi situaci.
Jednoduse:
2 virtualni adaptery kazdej s vlastni MAC adresou na 1 fyzickym adapteru
Duvod:
Poskytovatel kontroluje na gw spojeni ip<>mac a s urcitejch duvodu chci pouzivat muj "linuxbox" jako muj gw a nasladne pak routovat urcitej trafik s ruznejma (dvema) source ip adresama
EDIT: Virtuální síťovka s vlastní MAC adresou - tehle titulek neni tak nazornej jako muj puvodni... napr. jen jedna virtualni sitovka s jednou MAC adresou neni problem
EDIT2: Chápu, ale původní název jednak začínal číslem a hlavně se roztahoval na tři řádky na titulní straně. Klidně to zase uprav, ale ať je to kratší.
-
Mělo by jít vytvořením dummy0 rozhraní a jeho zapojením do bridge
-
jakoze br0(eth0,dummy0)? ... neco podobnyho sem zkousel s tap0 a to neresi situaci, protoze br0 ma pak jednu IP a jednu MAC pripadne pak lze udelat br0:0, ale to uz rovnou muzu udelat eth0 eth0:0... a to je furt jen 3. vrstva
-
zkus http://www.primianotucci.com/default.php?view=57 a dej vedet jak to dopadlo
-
jj na to sem narazil... ale moc se mi do toho nechce viz. "...This application
helps to hack this..."
prave me zajimalo jestli je tady nejaky proper reseni
-
Kromě zmíněného user-space programu to lze udělat i s vanilkovým linuxem pomocí bridge a driveru virtual ethernet adapter pair. Zrealizuješ si v jádře něco takového:
|LAN
|
|
+-----------------+
| eth0 |
| |
| bridge br0 |
| |
|ebr0 ebr1|
+-----------------+
| |
|emac0 |emac1
A na virtuálních síťovkách emac0 a emac1 si nastavíš MAC a IP adresy podle svého uvážení... Můžeš si samozřejmě vymyslet vlastní smysluplné názvy.
# modprobe veth
# ip link add name ebr0 type veth peer name emac0
# ip link add name ebr1 type veth peer name emac1
# ip link set dev emac0 address 02:11:22:33:44:55
# ip link set dev emac1 address 02:22:33:44:55:66
# brctl addbr br0
# brctl stp br0 off
# brctl addif br0 eth0
# brctl addif br0 ebr0
# brctl addif br0 ebr1
# for name in br0 ebr0 ebr1 emac0 emac1 eth0; do ip link set dev $name up; done
... dale nastavit IP adresy na emac0 a emac1 a mělo by to jet...
-
nebo:
ip link add link eth0 address 00:11:11:11:11:11 eth0.1 type macvlan
ip link add link eth0 address 00:22:22:22:22:22 eth0.2 type macvlan
-
nebo:
ip link add link eth0 address 00:11:11:11:11:11 eth0.1 type macvlan
ip link add link eth0 address 00:22:22:22:22:22 eth0.2 type macvlan
Pravda, na ovladač MAC-VLAN jsem úplně zapomněl. Ten to řeší samozřejmě mnohem elegantněji...