Hallo Zusammen
Ich habe ein etwas exotisches Problem. Um meinen eigenen TCP/IP Stack zu
testen, lasse ich diesen auf meinem Linux PC laufen und nutze dann tools
wie z.B. telnet, auf dem gleichen Computer. Mein Problem ist, weil ich
über einen Packet Socket mit meinem TCP/IP Stack Ethernetframes
verschicke, benötige ich dafür ein Netzwerkinterface mit einer IP und
einer MAC Adresse. Mein Problem ist, dass ich das normale linux Loopback
Device nicht verwenden kann, da dieses keine mac adresse hat und der
Kernel sich bei diesem um jedes Packet im Netz 127.0.0.0/8 und nicht nur
um die einer einzelnen Adresse wie z.B. 127.0.0.1 kümmert. Bridges und
dummy-devices in Linux bringen auch nicht das gesuchte Ergebnis. Wenn
ich ein W-Lan interface nehme, brauche ich einen WLan-Router, und manche
Senden Ethernetframes mit identischer Source und Destination mac nicht
zurück. Selbiges gillt für Ethernetinterfaces, aber dafür habe ich
bereits ein eigenes Physisches Loopbackdevice gebaut, wo einfach RX und
TX verbunden ist. Dieses kann ich aber bei meinem Surface Pro 3 Tablet
nicht verwenden, da dieses nur WLan hat. Der Handy WLan ist auch keine
Lösung, weil dann der Akku in wenigen Stunden leer ist.
Nun zu meiner Frage:
Kennt jemand einen Treiber für Linux, der ein Netzwerkinterface mit Mac
Adresse bereitstellt, bei welchem das Empfangen der selben
Ethernetframes, die Gesendet werden, simuliert wird und bei welchem sich
der Kernel nur um die IP des Interfaces kümmert, und nicht um das
gesammte Subnetz?
Oder kennt jemand alternativ einen kleinen kaufbaren USB Stick der dies
tut und sich als ethernet schnittstelle ausgibt?
Ideal wäre es wenn der Treiber keine untere grenze für die Grösse von
Ethernet Packeten hätte, wie dies beim WLan Treiber meines Surface Pro 3
der fall ist, der immer mindestens 114 bytes haben will. Dies ist jedoch
optional, weil ich dafür einen workaround habe.
Mit Freundlichen Grüssen
Daniel Abrecht