Jump to content
Sign in to follow this  
Heilemachen

Router kommunizieren über MAC?

Recommended Posts

Hallo zusammen,

 

habe heute eine spezielle Frage wo mir grade keine Ruhe lässt. Wir wollten gerade einem Azubi erklären wie die Kommunikation eines Routers vonstatten geht und haben dabei selbst unterschiedliche Meinungen und ich finde leider nichts im Internet wo das GENAU beschreibt

 

Konstellation:

PC (A) Router (A) Router (B) PC (B)

 

Wenn nun PC (A) mit PC (B) kommunizieren will schickt er ein Paket los. Die Router belassen in dem Paket dann die IP-Adressen von PC (A) als Source und PC (B) als Destination. Nur die MAC-Adressen werden von den Routern geändert.

Nun ist meine Annahme dass Router (A) und Router (B) untereinander auf MAC-Ebene kommunizieren. Also Router (A) holt sich von Router (B) die MAC-Adresse indem er an seinen Next-Hop sozusagen eine ARP-Anfrage stellt und dann die weitere Kommunikation über MAC macht.

Stimmt das? Meine Kollegen meinen dass die komplette Kommunikation gerade zwischen den beiden Routern über IP und KEINESFALLS über MAC stattfindet.

 

Wie läuft es genau ab oder habt ihr eine Seite wo das drinsteht? Ich möchte ungern etwas falsches erzählen.

 

Danke

Grüsse Stefan

Share this post


Link to post
Share on other sites

Wie soll alles ueber IP laufen wenn IP von "MAC" abhaengt? Es wird immer die SRC und DST MAC von dem jeweiligen Router geandert. IPs bleiben gleich.

Kapitel 1 Lehrbuch TCP/IP :D

Share this post


Link to post
Share on other sites

Oder mal deutlicher gesagt: Direkt können zwei Rechner ausschließlich über die MAC-Adresse kommunizieren. Das gilt nicht nur für Router.

 

Gruß, Nils

Share this post


Link to post
Share on other sites

Hallo,

 

hier vielleicht ein wenig Cisco lastiger (ausgegangen von aktiviertem CEF Switching)

 

1. PC sendet packet an router

==> source mac PC

==> dest mac Router (das hat der pc dann aus dem arp cache ==> arp -a)

 

2. am incoming interface der Routers wird das Paket empfangen und die Art des Forwarding definiert:

 

a. Prozess Switching

b. Flow Switching

c. CEF Switching

 

Dies ist abhängig von den aktivierten Features. generell ist die Frage, ob der RP oder die CPU aus bestimmten Gründen das Paket sehen muss. Gründe für eine Fallback auf den nächsten (schlechteren) Forwarding Path sind z.B. gesetzte IP Optionen, Suboptimale TTL Werte (manchmal natürlich auch sinnvoll) oder auch Features, die im optimalen Switchingpfad nicht unterstützt werden. Gehen wir nun vom optimalen CEF Pfad aus..

 

Was ist vorher passiert:

- Der Router hat routen gelernt (dynamisch, statisch oder connected)

- Der Router hat Mac Adressen gelernt (via ARP ==> im Arp Table)

 

--> nun wird der Routingprozess nach administrativer Distance, Metric usw. bestimmte Routen in der Routing Information Base installieren. Die besten natürlich. Der CEF Prozess wird nun versuchen für die gelernten Ip Prefixe

 

1. Die IP Prefixe in einem Binary Tree aufzuteilen

2. den next hop im arp table zu finden

3. das ausgehende interface zu definieren

 

aus 1. wir nun die Forwarding information Base (FIB)

aus 2. + 3. wird nun der Adjacency Table

 

FIB und Adjency Table werden nun verknüpft. Für jedes Prefix wird es nun ein outgoing interface und eine rewrite action geben

 

Hätten wir nun ein TCAM basierendes System (like 6k) wird die FIB Information + Adjacency Table noch ein wenig komprimiert und in diesem für schnelle und parallele Lookups optimierter Speicher abgelegt. ==> Forwarding in HW

 

==> Nun wir das Ip Prefix (Destination IP) im FIB (TCAM) analysiert.

 

Falls ein Outgoing Interface und eine L2 rewrite action vorhanden sind. Wir der L2 Header am OUTGOING Interface umgeschrieben (MAC vom Nexthop aus dem Adjacencytable)

 

==> Falls nun eine andere technik im Einsatz ist FR / ATM / MPLS. wird halt dann ein andere rewrite action gewählt (ein header - mehere).

 

==> Wenn wir über ethernet sprechen MUSS die MAC Adresse des Next Hops sinnvollerweise bekannt sein. Sonst würde der Router/Switch am outgoing interface die Pakete flooden (like Unicast Flooding).

hope this helps.

Share this post


Link to post
Share on other sites

oha ich muss sagen, ich haette nun auch gedacht, dass router auf ip ebene kommunizieren, denn genau so wirds im ccna1 gelehrt. hub und switche = mac und router auf ip ebene. daher sollte man deren angaben nach router benutzen um broadcastdomänen zu trennen. bin mir eigtl auch sicher, dass ich da nichts durcheinander werfe

Share this post


Link to post
Share on other sites

Hallo,

 

an sich kommunizieren router auch auf layer 3. router kümmern sich um ip prefixe und machen nach deren eine forwarding entscheidung. Welche l2 technick drunter liegt ist dann nebensache. Beim generieren des Pakets am ausgehenden interface muss halt in den ethernet header eine ziel mac stehen um dem vielleicht dazwischen geschaltenen switch die l2 switching entscheidung zu erleichtern..

 

hope this helps.

Share this post


Link to post
Share on other sites

Ich perönlich war ja immer der Meinung, dass Router sich in einem Ethernet Netzwerk der Situation anpassen. Was soviel heisst dass sie nur dann anfagnen zu routen, wenn die Destination-IP Adresse sich in einem anderen Subnetz befindet.

 

Insbesondere dient ja IP CEF dazu, dem Router zu sagen die Packete zu switchen (ein Vorgang der weniger Leistung braucht als das Routen)

Share this post


Link to post
Share on other sites

Ist doch egal ob die Pakete intern geswitcht oder geroutet werden, wenn die beiden Router untereineander ueber Ethernet verbunden sind aendert sich die MAC Adresse.

Share this post


Link to post
Share on other sites

Hallo,

 

@Thimax:

 

// Ich perönlich war ja immer der Meinung, dass Router sich in einem Ethernet Netzwerk der Situation anpassen. Was soviel heisst dass sie nur dann anfagnen zu routen, wenn die Destination-IP Adresse sich in einem anderen Subnetz befindet.

//

==> klar der Router wird die Kommunikation innerhalb eines Subnetzes im normalfall nicht mitbekommen, da die Clients ihn nicht adressieren.

 

//

Insbesondere dient ja IP CEF dazu, dem Router zu sagen die Packete zu switchen (ein Vorgang der weniger Leistung braucht als das Routen)

//

==> benötigt weniger leistung, da weniger lookups.

Share this post


Link to post
Share on other sites

Hallo zusammen,

 

vielen Dank für die vielen Antworten.

 

Es gibt da wohl auch anderswo verschiedene Ansichten. Also für mich zusammengefasst sehe ich das so.

 

Wenn ein Router an einen weiteren Router per Ethernet verbunden ist dann schaut der erste Router in seine Tabelle wo er hinrouten muss und schaut dann in seiner ARP-Tabelle nach der MAC-Adresse des Zielrouters. Gerade bei dem Einwand des Switches zwischen den beiden Routern macht das ja auch Sinn. Bei anderen physikalischen Techniken läuft das evtl. anders aber das Prinzip bleibt gleich.

 

Also im Kurzen

 

DeviceA: IPSource(IPS)-A, MACSource (MACS)-A, IPDestination(IPD)-D, MACDestination (MACD)-B

 

DeviceB: IPS-A, MACS-B,IPD-D,MACD-C

 

DeviceC: IPS-A, MACS-C,IPD-D,MACD-D

 

So wäre für mich logisch: Ein Router braucht im Ethernet die Layer3 Adresse einmalig zum Ermitteln des NextHops und kann dann die weiteren Pakete DIESER Datenübertragung im Layer2 fortführen. :rolleyes:

Share this post


Link to post
Share on other sites
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte überlege Dir, ob es nicht sinnvoller ist ein neues Thema zu erstellen.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Werbepartner:



×
×
  • Create New...