Ich habe eine frage bezüglich "virtueller" interfaces.
Was ich gerne machen würde ist, auf einer phsyikalischen ethernetkarte mehrere andere Interfaces zu simulieren- alle mit eigener Mac Addresse.
User Mode Linux verwendet Bridging um diesen Effekt zu erreichen, ich will das eigentlich genau gleich machen, nur eben ohne einer UML instanz.
Ethernet Bridging support und tap device support sind in menen 2.6.10er kernel kompiliert.
hier mal mein skript
Code: Alles auswählen
echo "shutting eth0 down"
ifconfig eth0 down
echo "initializing eth0"
ifconfig eth0 0.0.0.0 promisc up
echo "creating and configuring bridge"
brctl addbr bridge
brctl setfd bridge 0
brctl sethello bridge 0
brctl stp bridge off
echo "configuring bridge interface"
ifconfig bridge 10.1.51.31 netmask 255.255.0.0 up
brctl addif bridge eth0
tunctl -u root -t fake > /dev/null
ifconfig fake 0.0.0.0 promisc up
brctl addif bridge fake
Code: Alles auswählen
bridge Link encap:Ethernet HWaddr 00:02:44:63:25:EC
inet addr:10.1.51.31 Bcast:10.255.255.255 Mask:255.255.0.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:76 errors:0 dropped:0 overruns:0 frame:0
TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:7663 (7.4 KiB) TX bytes:378 (378.0 b)
eth0 Link encap:Ethernet HWaddr 00:02:44:63:25:EC
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:248523 errors:0 dropped:0 overruns:0 frame:0
TX packets:178117 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:149674219 (142.7 MiB) TX bytes:91940133 (87.6 MiB)
Interrupt:11 Base address:0x9400
fake Link encap:Ethernet HWaddr 00:FF:62:72:98:C5
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:73 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:567 errors:0 dropped:0 overruns:0 frame:0
TX packets:567 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:56516 (55.1 KiB) TX bytes:56516 (55.1 KiB)
Ich kann auch eine IP zuweisen und kann aber von außen diese nicht pingen.
route:
Code: Alles auswählen
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.1.0.0 * 255.255.0.0 U 0 0 0 bridge
default clustor 0.0.0.0 UG 0 0 0 bridge
Bin schon etwas verzweifelt vielleicht kann mir ja jemand helfen.
Nochmal, das Ziel ist es mehrere eth karten auf einer zu simulieren und nach außen hin als mehrere rechner zu erscheinen (ohne UML).
viel dank im vorraus
JGoblin