[[oktatas:hálózat:cisco_szerint_a_hálózat|< Cisco szerint a hálózat]]
====== Ethernet ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2018
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
===== Fogalmak =====
==== VLAN ====
A VLAN a Virtuális LAN rövidítése. Egy LAN hálózaton belül több virtuális
hálózatot hozunk létre, amelyek úgy működnek, mintha valóban különálló
hálózatok lennének.
===== Az Etherent működése =====
Az Ethernet a legelterjedtebb LAN technológia. A következő szabványok tartoznak ide:
* IEEE 802.2
* IEEE 802.3
A csomagokat keretekbe ágyazzuk, ahol a következő funkciókat látjuk el:
* keret határolás
* A bitek határait jelölni kell a szinkronizálás miatt
* címzés
* A keretbe helyezzük el a MAC címet.
* hibaelhárítás
* A keret egy ciklikus redundancia ellenőrzést tartalmaz, CRC használatával.
Az MAC al-réteg feladata a bitek fizikai közegre írása, illetve annak olvasása.
Az Etherent logikailag sín (vagy busz) topológián alapszik.
Ez azt jelenti, hogy az azonos hálózati szegmensen elhelyezkedő
eszközök osztoznak a közegen.
===== MAC cím =====
A MAC cím elvileg az egész világon egyedi. A számok kiadását az IEEE végzi.
Minden gyártó rendelkezik egy 3 bájtos azonosítóval. Ezt nevezzük OUI számnak.
Az utolsó három bájt a NIC azonosító.
^ gyártó ^ interfész ^
| OUI | NIC |
| 24 bit | 24 bit |
| 00-8f-23 | 4a-fb-03 |
===== Keretek továbbítása =====
{{:oktatas:hálózat:cisco_szerint_a_hálózat:keret_tovabbitas.png?400|}}
===== Ethernet szabványok =====
| 1973 | Etherent | Dr. Robert Metcalf -- Xerox Corp. |
| 1980 | DIX \\ Etherent II | Digital Equipment Corp. |
| 1983 | IEEE 802.3 \\ 10 BASE-5 | 10 Mb/s Ethernet \\ vastag koaxiális kábel |
| 1985 | IEEE 802.3a \\ 10 BASE-2 | 10 Mb/s Ethernet \\ vékony koaxiális lábel |
| 1990 | IEEE 802.3i \\ 10 BASE-T | 10 Mb/s Ethernet \\ csavartérpár (TP) |
| 1993 | IEEE 802.3j \\ 10 BASE-F | 10 Mb/s Ethernet \\ üvegszálas optikai |
| 1995 | IEEE 802.3u \\ 100 BASE-xx | 100 Mb/s Ethernet \\ csavartérpár |
| 1998 | IEEE 802.3z \\ 1000 BASE-X | Gigabit Ethernet \\ optikai üvegszálon |
| 1999 | IEEE 802.3ab \\ 1000 BASE-T | Gigabit Ethernet \\ csavartérpáron |
| 2003 | IEEE 802.3ae \\ 10G BASE-xx | 10 Gbit/s (1,250 MB/s) Ethernet fényvezető szálon |
| 2006 | IEEE 802.3an \\ 10G BASE-T | 10 Gigabit Ethernet \\ csavartérpáron |
===== Mezőméretek bájtban =====
Kétféle keretezés létezik. Az egyik az IEEE 802.3-as, a másik a DIX -- Ethernet II.
^ IEEE 802.3 ^^^^^^^
| 7 | 1 | 6 | 6 | 2 | 46 -- 1500 | 4 |
| előtag | start \\ bit | cél \\ cím | forrás \\ cím | hossz | 802.2 fej \\ adat | ellenőrző \\ összeg |
^ DIX -- Ethernet ^^^^^^^
| 8 | 6 | 6 | 2 | 46 -- 1500 | 4 |
| előtag | cél \\ cím | forrás \\ cím | típus | 802.2 fej \\ adat | ellenőrző \\ összeg |
Az Etherent II. és a IEEE 802.3 szabvány minimum és maximum értékei:
* minimum 64 bájt
* maximum 1518 bájt
Az értékek magában foglalják az összes bájtot MAC-cím mezőtől az ellenőrző összegig.
Az előtag és a keretező mező nincs a keret méretében.
Ha egy keret 64 bájtnál kisebb ütközési keretnek tekintendő, amelyet az állomások
automatikusan eldobnak.
1998-ban IEEE 802.3ac szabványban kiterjesztették a keret maximális méretét 1522-re.
Ez plusz 4 bájt. Ennek segítségével a keret lehetővé teszi a virtuális helyi
VLAN használatát. Lehetővé válik a QoS, azaz a felhasználói prioritás használata.
4 bájt QoS és VLAN számára.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:negy_bajt_qos_vlan_ieee_802_3ac.png?400|}}
===== A keret 5-dik mezője =====
A keret ötödik mezője most akkor hossz vagy típus?
Valahogy meg kell különböztetni az IEEE 802.3 és az Ethertnet II keretet.
A következő szabályt vehetjük figyelembe:
* Ha az érték >= 1536, akkor típus
* Ha az érték <= 1500, akkor hossz
Az 1536 hexadecimálisan 0x0600, az 1500 pedig 0x05DC.
===== Az adatmező =====
^ IEEE 802.3 ^^^^^^^
| 7 | 1 | 6 | 6 | 2 | 46 -- 1500 | 4 |
| előtag | start \\ bit | cél \\ cím | forrás \\ cím | hossz | 802.2 fej \\ adat | ellenőrző \\ összeg |
Az adatmező 45-1500 bájt között lehet. Tartalma a harmadik rétegből
egy csomag, amely általában IPv4. A keret minimális mérete 64 bájt.
Ha túl kicsi, a minimális méretre növeljük, kitöltővel (pad).
===== Az FCS mező =====
A CRC összeget kiszámolja a küldő, majd beteszi az FCS mezőbe.
A fogadó is kiszámítja, majd összehasonlítja.
===== Ethernet MAC =====
==== Windowson ====
ipconfig /all
[...]
Fizikai cím ..................: 08-00-27-1B-61-0C
[...]
[...]
Physical Address ……….: 00-22-F2-83-F2-C4
[...]
==== Linuxon ====
ifconfig
[...]
HWaddr bc:5f:f4:7e:38:5d
[...]
ip address show
[...]
link/ether 00:25:22:f1:4e:07
[...]
==== Cisco IOS ====
R1#show interface GigabitEthernet 0/0
[...]
0007.ec3e.d501
[...]
==== Ethernet címzés ====
* egyedi címzés
* szórásos címzés
* csoportos címzés
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_unicast_servernek.png?400|}}
A szórásos (broadcast) cím: FF-FF-FF-FF-FF-FF. Ezt használja a DHCP és az ARP is.
Az IP cím ilyenkor csupa 1-es.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_broadcast.png?400|}}
A multicast IPv4 címtartomány a következő: 224.0.0.0 -- 239.255.255.255.
Csak célként használható tartomány.
Multicast esetén a MAC cím mindig így kezdődik: 01-00-5e.
A végzdőése a csoportos IP cím alsó 23 bitjét átalakítjuk 6 hexadecimális karakterré.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_multicast.png?400|}}
===== Az Ethernet MAC és az IP =====
A hálózaton az eszközök két címmel rendelkeznek:
* fizikai cím, azaz MAC cím
* logikai cím, azaz IP cím
A helyi hálózatban használjuk a MAC címet, az egész Interneten az IP címet.
A fizikai címet az IP cím alapján kapjuk meg. De hogyan kapjuk meg
az IP címet? Az IP cím tartománynév alapján kerül meghatározásra.
Ehhez a programok a DNS (Domain Name System) rendszert használják.
A tartománynévből (domain név) derül ki, hogy hova kell küldeni.
A tartománynevet általában a felhasználó adja meg.
208.110.105.22 zold.hu
Egy adat, amely a hálózaton utazik tartalmaz MAC és IP címeket:
| cél MAC \\ AA:AAA:AA:BB:BB:BB | forrás MAC \\ AA:AA:AA:AA:AA:AA | forrás IP \\ 196.198.22.87 | cél IP \\ 205.124.100.35 | adat | utótag |
Melyik hálózati eszköz mit használ ebből?
* PC, laptop stb. (végberendezések): MAC cím
* Switch: MAC cím
* Router: IP cím
===== ARP =====
==== Az ARP ====
Az ARP az Address Resolution Protocol rövidítése. Címmeghatározó protokollnak nevezhetjük.
A következő funkciókat biztosítja:
* IPv4 cím és MAC cím összerendelés
* táblázatban nyilvántartás vezetése
A keretek továbbítás előtt ki kell deríteni mi a címzett MAC címe.
Ezt az IP címből derítjük ki. Ezen a szinten (2. hálózati réteg) tudjuk
mi az IP cím, csak meg kell kérdezni a hálózaton kinek van ilyen IP címe,
és mi az ő MAC címe.
==== Példa 01 ====
A következő példában A gép szeretne C gépnek üzenetet küldeni.
Az A gép ezért egy ARP szórást indít a hálózaton. Az ARP kérésben
a cél MAC cím ilyenkor: **FFFF.FFFF.FFFF**. A forrás cím, természetesen
saját MAC címe.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_cim_felderites_01.png?400|}}
Ez az üzenetet mindenki megkapj:
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_cim_felderites_02.png?400|}}
Akinek nem szól az eldobja. A célgép megtartja és válaszol a forrásnak,
elküldve saját MAC címét:
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_cim_felderites_03.png?400|}}
Ha meg van a MAC cím A gép elindítja a tényleges üzenetet, eltárolja
a MAC cím táblájában az IP cím MAC cím összerendelést, egy darabig.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_cim_felderites_04.png?400|}}
A MAC cím IP cím alapján történő felderítését nevezzük ARP protokollnak.
A hálózati eszközök egy táblázatot tartanak fenn a kiderített MAC és
IP cím összerendelések számára. Egy IP cím MAC cím összerendelés két
módon kerülhet a táblázatba:
* az eszköz mindig figyeli a forgalmat, ha kap egy összerendelést feljegyzi
* ARP kérést küld
Az ARP táblázatban minden bejegyzés időbélyeggel van ellátva.
Ha egy címről nem jön keret adott ideig, a táblából törlésre kerül.
==== Nem válaszol a cél ====
Mi történik, ha egy ARP kérésre nem érkezik válasz? A csomag eldobásra kerül,
a felsőbb rétegekbe egy értesítés indul.
==== Küldés más hálózatba ====
A cél IP cím nem a helyi hálózaton van, akkor az alapértelmezett átjáró
felé kell küldeni az adatokat. Ez általában egy router.
Az ARP protokollnak ekkor a router MAC címét kell kiderítenie.
Az alábbi ábrán láthatjuk, hogy a router g0/0 nevű interfészen
fogadja az adatokat.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:mac_cim_atjaroval.png?400|}}
A router a s0/0/0 interfészen küldi tovább, de a keretben már az s0/0/0
interfész MAC címe szerepel majd.
==== ARP kezelése az egyes operációs rendszereken ====
=== Windows ===
* egy MAC cím táblában tartásának ideje: 2 perc
* ha használja bejegyzést, akkor kap még +10 percet
ARP tábla megjelenítése:
arp -a
C:\Users\janos>arp -a
Kapcsolat: 192.168.5.101 --- 0xb
Internetcím Fizikai cím Típus
192.168.5.1 a0-f3-c1-d7-5c-7a dinamikus
192.168.5.5 bc-5f-f4-7e-38-5d dinamikus
192.168.5.255 ff-ff-ff-ff-ff-ff statikus
224.0.0.2 01-00-5e-00-00-02 statikus
224.0.0.22 01-00-5e-00-00-16 statikus
224.0.0.252 01-00-5e-00-00-fc statikus
239.0.0.1 01-00-5e-00-00-01 statikus
239.255.255.250 01-00-5e-7f-ff-fa statikus
255.255.255.255 ff-ff-ff-ff-ff-ff statikus
C:\Users\janos>
ARP bejegyzés törlése
arp -d 192.168.5.5
Az egész ARP tábla törlése (csak rendszergazdai joggal):
arp -d *
=== Linux ===
ARP tábla megjelenítése:
arp
root@mars:~# arp
Address HWtype HWaddress Flags Mask Iface
192.168.5.101 ether 08:00:27:1e:10:79 C enp1s0
192.168.5.1 ether a0:f3:c1:d7:5c:7a C enp1s0
root@mars:~#
ARP bejegyzés törlése:
arp -d 192.168.5.101
=== Cisco IOS ===
ARP tábla megjelenítése:
R1#show ip arp
===== ARP problémák =====
* ARP kérések nagyon megterhelhetik a hálózatot, ha egyszerre nagyon sok érkezik.
* Az ARP és IP cím összerendelések meghamisíthatók. Ezt nevezzük ARP-spoofingnak.
Az ARP-spoofing kezelésében a swith használata már egy kezdetleges megoldást
nyújt, mivel tanul. A swith első arp kérést még mindenhova továbbítja, de tanulás
után már csak arra a portra küldi az ARP üzeneteket, ahol a cél és a forrás
kommunikál.
===== A switch működése =====
A switchek a 2. hálózati réteben (Layer 2) dolgoznak.
Az Ethernet ugyan sín topológia alapján működik, de a switchek
minden egyes kapcsolatot külön kezelnek pont-pont alapon.
A tanulási folyamat után a switch MAC cím alapján szűr, és csak
azokra a portokra küldi ki az adatokat, ahol az adott eszköz
található. A kapcsoló ehhez egy MAC címtáblát épít.
A kapcsolók az egyes portokon kétféle üzemmódban képesek működni:
* fél-duplex
* duplex
===== Kétféle kapcsolás =====
* Tárol-és-továbbít (store-and-forward)
* közvetlen kapcsolás (cut-through)
==== Tárol és továbbít ====
Pufferben tárolja a keretet, amíg az teljesen meg nem érkezik.
Megérkezés után hibaellenőrzés következik.
QoS esetén ez nélkülözhetetlen.
A main kapcsolók csak ezt használják.
==== Közvetlen kapcsolás ====
A keretet részeit azonnal továbbítja, még az egész keret megérkezése
előtt. Hátránya, hogy hibás keretek is továbbításra kerülnek így.
A közvetlen kapcsolásnak két módja létezik:
* gyors-kapcsolás
* leggyorsabb, mivel legkisebb a késleltetés
* töredékmentes kapcsolás
* az első 64 bájt megvárja, amíg letöltődik
* így van egy fajta hibaellenőrzés
* a tárol és továbbít és a gyors-kapcsolás között
Van olyan kapcsoló, amelyik alapból közvetlen kapcsolást használ,
de ha túl sok hiba van, akkor átkapcsol tárol és továbbít módba.
A hibák arányának csökkenése esetén vissza vált közvetlen továbbításra.
===== Layer 3 kapcsoló =====
A csomagtovábbítási döntésekhez IP címeket is használ.
Azt is megtanulja melyik porthoz milyen IP cím tartozik.
Képes forgalomirányításra is.
{{:oktatas:hálózat:cisco_szerint_a_hálózat:layer_3_kapcsolo.png?400|}}