So bewahren Sie L2-Header beim Senden von Ethernet-Frames über die serielle Leitung auf

393
user49114

Ich verwende pppd (in Linux), um Ethernet-Daten über eine serielle Leitung an einen anderen Computer zu senden. Wie kann ich L2-Header beibehalten, während Ethernet-Frames über serielle Leitungen gesendet werden? Es scheint, dass das ppp-Protokoll nur die "L3-Daten" als Nutzdaten sendet, wodurch die L2-Header einschließlich der src / dst-MAC-Adressen gelöscht werden. Welches Protokoll usw. sollte ich verwenden, um L2-Header zu erhalten?

2
Können Sie aus Interesse ein Bild der seriellen Leitung und der beteiligten Hardware zeigen? barlop vor 9 Jahren 0

1 Antwort auf die Frage

0
Hagen von Eitzen

Technisch gesehen ist nur das Senden von L3-Daten das Richtige (oder das Entfernen von L2-Angaben auf der eingehenden Seite (was z. B. möglich ist)Ethernet sein, aber es könnte auch ein Token-Ring sein, nicht wahr?) Übertragen Sie den Inhalt auf serielle Weise (was einige eher triviale L2-Verkapselungen bedeutet) und machen Sie den umgekehrten Vorgang auf der Gegenstelle (der möglicherweise ein anderes L2-Protokoll ausführt) ). Von der Systematik sprechen wir also von Routern. Wenn wir über die direkte Kommunikation zwischen den beiden Enden sprechen, ist auch kein MAC (weder von Ethernet, noch von Token Ring oder ...) beteiligt, nur weil der Kommunikationspartner nicht identifiziert werden muss - es gibt nur "das." anderes Ende". Es gibt auch keine systematische Möglichkeit, den MAC irgendeiner der anderen ethrenet-Schnittstellen irgendwie hinzuzufügen, so wie Sie den MAC von eth0 keiner Kommunikation hinzufügen, die über eth1 ausgeht.

Was Sie wollen, zu erstellen, ist eine Brücke über die serielle Schnittstelle, wie sometnhing dies . Beachten Sie jedoch die Nachteile (z. B. die Verbreitung von Broadcasts).

1-1- Die Absicht besteht darin, eine Brücke mit einer seriellen (asynchronen) Schnittstelle herzustellen. 1-2- Die andere Schnittstelle (die ankommende Seite, wie Sie es nennen) ist eth0. 2- Der Verkehr (Broadcasts usw.) kann gesteuert werden, indem nur eine bestimmte Art von Verkehr in das System zugelassen wird (Stream 1 # port # x). 3- Wenn die serielle Leitung synchron war, könnte das HDLC-Protokoll verwendet werden. 3-1- Der HDLC verwendet den gesamten L2-Frame einschließlich der Header (src / dst MAC usw.) als Nutzlast (genau das, was ich suche). 3-2- Soweit ich weiß, kann HDLC nicht asynchron verwendet werden serielle Leitungen. user49114 vor 9 Jahren 0
4- Das eth0 ist mit einem Netzwerk verbunden, und es kann eine Reihe von Datenverkehr "stream # 1_port # x" in die Bridge kommen, die über die andere Seite der asynchronen seriellen Leitung gesendet werden sollte (basierend auf der MAC-Addr.-Tabelle). 5 - ENDLICH: Es ist klar, dass die L2-Header erhalten bleiben müssen, damit die Bridge funktioniert. ABER WIE KANN ICH DIESES ZIEL ERREICHEN? KANN ICH HDLC über die asynchrone serielle Leitung oder ein anderes Protokoll verwenden, das zu demselben Effekt führt? user49114 vor 9 Jahren 0