Hogyan lehet elérni, hogy egy darab ethernet kártyával több MAC címet
használjak (azaz kívűlről úgy nézzen ki a dolog, mintha több különböző
host lenne)? Az IP alias sajnos nem elég, az idióta protokoll layer2-n
címzi a hostokat. Amire eddig jutottam, az az, hogy libpcap-pel
figyelek a kártyán minden csomagra, a nekem szólókat elkapom, illetve
visszafelé packet sockettel küldöm az adatot, de jó lenne, hanem
kellene újra implementálni az IP/UDP/TCP/FTP/SNMP/TFTP protokollokat,
amik a layer2 fölött mennek...
_________________________________________________
linux lista - li...@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux
> Hogyan lehet elérni, hogy egy darab ethernet kártyával több MAC címet
> használjak (azaz kívűlről úgy nézzen ki a dolog, mintha több különböző
> host lenne)? Az IP alias sajnos nem elég, az idióta protokoll layer2-n
> címzi a hostokat. Amire eddig jutottam, az az, hogy libpcap-pel
> figyelek a kártyán minden csomagra, a nekem szólókat elkapom, illetve
> visszafelé packet sockettel küldöm az adatot, de jó lenne, hanem
> kellene újra implementálni az IP/UDP/TCP/FTP/SNMP/TFTP protokollokat,
> amik a layer2 fölött mennek...
ip link add link eth0 name foobar address 00:11:22:33:44:55 type macvlan
"eth0" a fizikai interface, "foobar" lesz az uj interface.
Gabor
--
---------------------------------------------------------
MTA SZTAKI Computer and Automation Research Institute
Hungarian Academy of Sciences
---------------------------------------------------------
Jól hangzik, de milyen kernel és iproute2 verzió kellene hozzá? A SLES
10.2-ben lévővel nem működik :-(
Közben megtaláltam, 2.6.23-as kerneltől van ilyen, akkor minimum SLES
11 kell hozzá.
Működik, egy kis probléma van vele. A jelenlegi felállásban ugyanabban
a subnetben van mind az eth0, mind a foobar IP címe és ha pingetem a
foobar IP címét, az ICMP EchoReply az eth0 MAC címével kerül ki a
hálózatra (a routing táblában két bejegyzés is van ugyanarra a
subnetre, az eth0-ás van előbb, azt választja ki a kernel). Van valami
módszer arra, hogy lebeszéljem erről és a foobar MAC címével menjen ki
a csomag? Persze nem csak pingnél, hanem mindenféle más protokollnál
is.
Az archívum kedvéért: source routinggal megoldható, "ip rule add from
<source-ip> table 1" és "ip route add to <local-net> table 1 dev
foobar" a megoldás.