Kapcsolási, forgalomirányítási és vezeték nélküli kommunikációs alapok
Mielőtt egy útválasztó továbbítan egy beérkező csomagot, meg kell határoznia a legjobb útvonalat számára. Egy útválasztó több hálózatot kapcsol össze, ami azt jelenti, hogy több interfésze van, amelyek mindegyike más-más IP-hálózathoz tartoznak.
Amikor egy útválasztó IP-csomagot kap egyik interfészén, meg kell határoznia, hogy melyik interfészének segítségével továbbítsa a csomagot a célállomáshoz. Ezt útválasztásnak nevezzük. Az interfész, amelyet az útválasztó a csomag továbbítására használ, lehet a végső cél, vagy lehet egy másik útválasztóhoz csatlakoztatott hálózat, amelyet a célhálózat eléréséhez használnak. Minden hálózat, amelyhez az útválasztó csatlakozik, általában külön interfészt igényel.
Az útválasztó elsődleges feladata, hogy meghatározza a legjobb útvonalat a csomagok továbbításához a forgalomirányítási táblázatában található információk alapján, és a csomagokat a céljuk felé továbbítsa. A routing tábla legjobb útvonalát a leghosszabb egyezésnek is nevezik. A leghosszabb egyezés egy olyan folyamat, amelyet az útválasztó használ a csomag cél IP-címe és az útválasztási táblázatban található útválasztási bejegyzés közötti egyezés megtalálására.
Az útválasztási táblázat egy előtagból (hálózati címből) és előtag hosszból álló útvonalbejegyzéseket tartalmaz. Ahhoz, hogy egy csomag cél IP-címe és az útválasztási táblázatban lévő útvonal között egyezés legyen, minimális számú bal szélső biteknek meg kell egyezniük a csomag IP-címe és az útválasztási táblázatban lévő útvonal között. Az útválasztási táblázatban az útvonal előtaghossza határozza meg a bal szélső bitek minimális számát, amelyeknek egyezniük kell.
A leghosszabb egyezés az útválasztási táblázatban az az útvonal, amelyen a legtöbb bal szélső egyező bit található. Mindig a legtöbb egyenértékű bal oldali bitet tartalmazó útvonal vagy a leghosszabb egyezés az előnyben részesített útvonal.
Megjegyzés: Az „előtag hossza” kifejezés az IPv4- és IPv6-címek hálózati részére egyaránt vonatkozik.
Közvetlenül kapcsolódó hálózatok
A közvetlenül csatlakoztatott hálózatok olyan hálózatok, amelyek az útválasztó aktív interfészein vannak konfigurálva. Egy közvetlenül csatlakoztatott hálózat hozzáadódik az útválasztási táblázathoz, ha egy router interfész IP-címmel és alhálózati maszkkal van felkonfigurálva (előtag hossza), és aktív státuszú (up/up).
Távoli hálózatok
A távoli hálózatok olyan hálózatok, amelyek nem csatlakoznak közvetlenül az útválasztóhoz. Az útválasztók kétféleképpen ismerhetik meg a távoli hálózatokat:
Alapértelmezett útvonal
Az alapértelmezett útvonal megadja a következő ugrású útválasztót, amelyet akkor kell használni, ha az útválasztási táblázat nem tartalmazza a cél IP-címére illeszkedő útvonalat. Az alapértelmezett útvonal manuálisan megadható statikus útvonalként, vagy automatikusan megtanulható egy dinamikus útválasztási protokoll segítségével.
Az IPv4 feletti alapértelmezett útvonal útvonalbejegyzése 0.0.0.0/0, az IPv6 feletti alapértelmezett útvonal pedig ::/0. A /0 előtag hossza azt jelzi, hogy az útvonalbejegyzés használatához nulla bitnek vagy egyetlen bitnek sem kell egyeznie a cél IP-címével. Ha nincsenek hosszabb, 0 bitnél hosszabb egyezésű útvonalak, akkor router az alapértelmezett útvonalat használja a csomag továbbítására. Az alapértelmezett útvonalat gyakran szokás utolsó lehetőség átjárónak is nevezni.
Most, hogy az útválasztó a leghosszabb egyezés alapján meghatározta a csomag legjobb útvonalát, meg kell határoznia, hogyan kell a csomagot beágyazni és továbbítani a megfelelő kimenő interfészen.
Csomag továbbítása egy közvetlenül csatlakoztatott végpontra
Ha az útvonalbejegyzés azt jelzi, hogy a kimenő interfész egy közvetlenül csatlakoztatott hálózat, ez azt jelenti, hogy a csomag cél IP-címe a közvetlenül csatlakoztatott hálózaton lévő eszközhöz tartozik. Ezért a csomag közvetlenül továbbítható a céleszközre. A céleszköz jellemzően egy Ethernet LAN végpontja, ami azt jelenti, hogy a csomagot Ethernet keretbe kell ágyazni.
A csomag Ethernet keretbe való beágyazásához az útválasztónak meg kell határoznia a csomag cél IP-címéhez társított cél MAC-címet. A folyamat attól függően változik, hogy a csomag IPv4 vagy IPv6 csomag:
Csomag továbbítása egy Next-Hop routerhez
Ha az útvonalbejegyzés azt jelzi, hogy a cél IP-címe egy távoli hálózaton található, ez azt jelenti, hogy a csomag cél IP-címe a hálózaton lévő olyan eszközhöz tartozik, amely nem csatlakozik közvetlenül a helyi routerhez. Ezért a csomagot egy másik útválasztónak kell továbbítani, ami tipikusan egy következő ugrású útválasztó. A következő ugrás címe megjelenik az útvonal bejegyzésében szereplővel.
Ha a továbbító útválasztó és a következő ugrású útválasztó Ethernet-hálózaton van, hasonló folyamat (ARP és ICMPv6 Neighbor Discovery) történik a csomag cél MAC-címének meghatározásához a korábban leírtak szerint. A különbség viszont abban áll, hogy az útválasztó a következő ugrású útválasztó IP-címét kell megkeresnie az ARP-táblájában vagy a szomszédos gyorsítótárban, nem pedig a csomag cél IP-címét.
Megjegyzés: Ez a folyamat más típusú 2. rétegű hálózatok esetén eltérő lehet.
Továbbítandó csomag eldobása – Nincs egyezés az útválasztási táblázatban
Ha nincs egyezés a cél IP-címe és az útválasztási táblázatban szereplő előtag között, és ha nincs alapértelmezett útvonal, akkor a csomag eldobásra kerül.
A csomagtovábbítási funkció elsődleges feladata, hogy a csomagokat a megfelelő adatkapcsolati kerettípusba foglalja a kimenő interfész számára. Például egy soros kapcsolat adatkapcsolati keretformátuma lehet pont-pont (PPP) protokoll, High-Level Data Link Control (HDLC) protokoll vagy más 2. rétegbeli protokoll.
A csomagtovábbítási funkció elsődleges feladata, hogy a csomagokat a megfelelő adatkapcsolati kerettípusba foglalja a kimenő interfész számára. Minél hatékonyabban tudja egy útválasztó végrehajtani ezt a feladatot, annál gyorsabban tudja továbbítani a csomagokat. Az útválasztók a következő három csomagtovábbítási mechanizmust támogatják:
Egy régebbi csomagtovábbítási mechanizmus továbbra is elérhető a Cisco útválasztókhoz. Amikor egy csomag megérkezik egy interfészre, azt továbbítja a vezérlősíkra, ahol a CPU megfelelteti a célcímet egy bejegyzéssel az útválasztási táblázatában, majd meghatározza a kilépési interfészt és továbbítja a csomagot. Fontos megérteni, hogy az útválasztó minden csomagnál megismétli a felvázolt folyamatot, még akkor is, ha a csomagok folyamának ugyanaz a címzettje. Ez a folyamatváltási mechanizmus nagyon lassú, és ritkán alkalmazzák a modern hálózatokban.
A gyorskapcsolás egy másik, régebbi csomagtovábbítási mechanizmus, amely a folyamatváltás utódja volt. A gyorskapcsolás gyorsváltó gyorsítótárat használ a következő ugrás információinak tárolására. Amikor egy csomag megérkezik egy interfészre, azt továbbítja a vezérlősíkra, ahol a CPU egyezést keres a gyorsváltó gyorsítótárban. Ha nem találja, akkor folyamatváltásra vált, és ezt a módszert használva továbbítja a kilépési felületre. A csomag áramlási információi szintén a gyorsváltó gyorsítótárban vannak tárolva. Ha egy másik, ugyanarra a célállomásra tartó csomag érkezik egy interfészre, a gyorsítótár következő ugrás információit a rendszer CPU beavatkozás nélkül újra felhasználja.
A CEF a legújabb és alapértelmezett Cisco IOS csomagtovábbítási mechanizmus. A gyorskapcsoláshoz hasonlóan a CEF is létrehoz egy továbbítási információs bázist (FIB) és egy szomszédsági táblát. A táblabejegyzések azonban nem csomag-vezéreltek, mint a gyorskapcsolás esetén, hanem változás-triggereltek, például amikor valami megváltozik a hálózati topológiában. Ezért, amikor egy hálózat konvergál, a FIB és a szomszédsági táblák tartalmazzák az összes információt, amelyet az útválasztónak figyelembe kell vennie a csomag továbbításakor. A Cisco Express Forwarding a leggyorsabb továbbítási mechanizmus, és ez az alapértelmezett csomagtovábbítási elv a Cisco útválasztókon és többrétegű kapcsolókon.
Router> enable Router# configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router(config)# hostname R1 R1(config)# enable secret class R1(config)# line console 0 R1(config-line)# logging synchronous R1(config-line)# password cisco R1(config-line)# login R1(config-line)# exit R1(config)# line vty 0 4 R1(config-line)# password cisco R1(config-line)# login R1(config-line)# transport input ssh telnet R1(config-line)# exit R1(config)# service password-encryption R1(config)# banner motd # Enter TEXT message. End with a new line and the # *********************************************** WARNING: Unauthorized access is prohibited! *********************************************** # R1(config)# ipv6 unicast-routing R1(config)# interface gigabitethernet 0/0/0 R1(config-if)# description Link to LAN 1 R1(config-if)# ip address 10.0.1.1 255.255.255.0 R1(config-if)# ipv6 address 2001:db8:acad:1::1/64 R1(config-if)# ipv6 address fe80::1:a link-local R1(config-if)# no shutdown R1(config-if)# exit R1(config)# interface gigabitethernet 0/0/1 R1(config-if)# description Link to LAN 2 R1(config-if)# ip address 10.0.2.1 255.255.255.0 R1(config-if)# ipv6 address 2001:db8:acad:2::1/64 R1(config-if)# ipv6 address fe80::1:b link-local R1(config-if)# no shutdown R1(config-if)# exit R1(config)# interface serial 0/1/1 R1(config-if)# description Link to R2 R1(config-if)# ip address 10.0.3.1 255.255.255.0 R1(config-if)# ipv6 address 2001:db8:acad:3::1/64 R1(config-if)# ipv6 address fe80::1:c link-local R1(config-if)# no shutdown R1(config-if)# exit R1# copy running-config startup-config Destination filename [startup-config]? Building configuration... [OK] R1#
R1# show ip interface brief Interface IP-Address OK? Method Status Protocol GigabitEthernet0/0/0 10.0.1.1 YES manual up up GigabitEthernet0/0/1 10.0.2.1 YES manual up up Serial0/1/0 unassigned YES unset administratively down down Serial0/1/1 10.0.3.1 YES manual up up GigabitEthernet0 unassigned YES unset down down R1#
R1# show ipv6 interface brief GigabitEthernet0/0/0 [up/up] FE80::1:A 2001:DB8:ACAD:1::1 GigabitEthernet0/0/1 [up/up] FE80::1:B 2001:DB8:ACAD:2::1 Serial0/1/0 [administratively down/down] unassigned Serial0/1/1 [up/up] FE80::1:C 2001:DB8:ACAD:3::1 GigabitEthernet0 [down/down] unassigned R1#
R1# show running-config interface gigabitethernet 0/0/0 Building configuration... Current configuration : 189 bytes ! interface GigabitEthernet0/0/0 description Link to LAN 1 ip address 10.0.1.1 255.255.255.0 negotiation auto ipv6 address FE80::1:A link-local ipv6 address 2001:DB8:ACAD:1::1/64 end R1#
R1# show interfaces gigabitEthernet 0/0/0 GigabitEthernet0/0/0 is up, line protocol is up Hardware is ISR4321-2x1GE, address is a0e0.af0d.e140 (bia a0e0.af0d.e140) Internet address is 10.0.1.1/24 MTU 1500 bytes, BW 100000 Kbit/sec, DLY 100 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation ARPA, loopback not set Keepalive not supported Full Duplex, 100Mbps, link type is auto, media type is RJ45 output flow-control is off, input flow-control is off ARP type: ARPA, ARP Timeout 04:00:00 Last input 00:00:00, output 00:00:06, output hang never Last clearing of "show interface" counters never Input queue: 0/375/0/0 (size/max/drops/flushes); Total output drops: 0 Queueing strategy: fifo Output queue: 0/40 (size/max) 5 minute input rate 2000 bits/sec, 1 packets/sec 5 minute output rate 0 bits/sec, 0 packets/sec 57793 packets input, 10528767 bytes, 0 no buffer Received 19711 broadcasts (0 IP multicasts) 0 runts, 0 giants, 0 throttles 0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored 0 watchdog, 36766 multicast, 0 pause input 10350 packets output, 1280030 bytes, 0 underruns 0 output errors, 0 collisions, 1 interface resets 0 unknown protocol drops 0 babbles, 0 late collision, 0 deferred 0 lost carrier, 0 no carrier, 0 pause output 0 output buffer failures, 0 output buffers swapped out R1#
R1# show ip interface gigabitethernet 0/0/0 GigabitEthernet0/0/0 is up, line protocol is up Internet address is 10.0.1.1/24 Broadcast address is 255.255.255.255 Address determined by setup command MTU is 1500 bytes Helper address is not set Directed broadcast forwarding is disabled Multicast reserved groups joined: 224.0.0.5 224.0.0.6 Outgoing Common access list is not set Outgoing access list is not set Inbound Common access list is not set Inbound access list is not set Proxy ARP is enabled Local Proxy ARP is disabled Security level is default Split horizon is enabled ICMP redirects are always sent ICMP unreachables are always sent ICMP mask replies are never sent IP fast switching is enabled IP Flow switching is disabled IP CEF switching is enabled IP CEF switching turbo vector IP Null turbo vector Associated unicast routing topologies: Topology "base", operation state is UP IP multicast fast switching is enabled IP multicast distributed fast switching is disabled IP route-cache flags are Fast, CEF Router Discovery is disabled IP output packet accounting is disabled IP access violation accounting is disabled TCP/IP header compression is disabled RTP/IP header compression is disabled Probe proxy name replies are disabled Policy routing is disabled Network address translation is disabled BGP Policy Mapping is disabled Input features: MCI Check IPv4 WCCP Redirect outbound is disabled IPv4 WCCP Redirect inbound is disabled IPv4 WCCP Redirect exclude is disabled R1#
R1# show ipv6 interface gigabitethernet 0/0/0 GigabitEthernet0/0/0 is up, line protocol is up IPv6 is enabled, link-local address is FE80::1:A No Virtual link-local address(es): Global unicast address(es): 2001:DB8:ACAD:1::1, subnet is 2001:DB8:ACAD:1::/64 Joined group address(es): FF02::1 FF02::2 FF02::5 FF02::6 FF02::1:FF00:1 FF02::1:FF01:A MTU is 1500 bytes ICMP error messages limited to one every 100 milliseconds ICMP redirects are enabled ICMP unreachables are sent ND DAD is enabled, number of DAD attempts: 1 ND reachable time is 30000 milliseconds (using 30000) ND advertised reachable time is 0 (unspecified) ND advertised retransmit interval is 0 (unspecified) ND router advertisements are sent every 200 seconds ND router advertisements live for 1800 seconds ND advertised default router preference is Medium Hosts use stateless autoconfig for addresses. R1#
R1# show ip route Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP (Output omitted) Gateway of last resort is not set 10.0.0.0/8 is variably subnetted, 6 subnets, 2 masks C 10.0.1.0/24 is directly connected, GigabitEthernet0/0/0 L 10.0.1.1/32 is directly connected, GigabitEthernet0/0/0 C 10.0.2.0/24 is directly connected, GigabitEthernet0/0/1 L 10.0.2.1/32 is directly connected, GigabitEthernet0/0/1 C 10.0.3.0/24 is directly connected, Serial0/1/1 L 10.0.3.1/32 is directly connected, Serial0/1/1 R1#
R1# show ipv6 route IPv6 Routing Table - default - 5 entries Codes: C - Connected, L - Local, S - Static, U - Per-user Static route (Output omitted) C 2001:DB8:ACAD:1::/64 [0/0] via GigabitEthernet0/0/0, directly connected L 2001:DB8:ACAD:1::1/128 [0/0] via GigabitEthernet0/0/0, receive C 2001:DB8:ACAD:2::/64 [0/0] via GigabitEthernet0/0/1, directly connected L 2001:DB8:ACAD:2::1/128 [0/0] via GigabitEthernet0/0/1, receive C 2001:DB8:ACAD:3::/64 [0/0] via Serial0/1/1, directly connected L 2001:DB8:ACAD:3::1/128 [0/0] via Serial0/1/1, receive L FF00::/8 [0/0] via Null0, receive R1#
R1# ping 10.0.3.2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.0.3.2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 2/2/2 ms R1# ping 2001:db8:acad:3::2 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 2001:DB8:ACAD:3::2, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 2/2/2 ms R1#
Egy másik hasznos funkció, amely javítja a felhasználói élményt a parancssori felületen (CLI), a show output szűrése. A szűrési parancsok a kimenet meghatározott szakaszainak megjelenítésére használhatók. A szűrési parancs engedélyezéséhez írjon be egy cső (|) karaktert a show parancs után, majd adjon meg egy szűrési paramétert és egy szűrési kifejezést.
A cső után konfigurálható szűrési paraméterek a következők:
Megjegyzés: A kimeneti szűrők bármely show paranccsal együtt használhatók.
R1# show running-config | section line vty line vty 0 4 password 7 121A0C0411044C login transport input telnet ssh R1# R1# show ipv6 interface brief | include up GigabitEthernet0/0/0 [up/up] GigabitEthernet0/0/1 [up/up] Serial0/1/1 [up/up] R1# R1# show ip interface brief | exclude unassigned Interface IP-Address OK? Method Status Protocol GigabitEthernet0/0/0 192.168.10.1 YES manual up up GigabitEthernet0/0/1 192.168.11.1 YES manual up up Serial0/1/1 209.165.200.225 YES manual up up R1# R1# show ip route | begin Gateway Gateway of last resort is not set 192.168.10.0/24 is variably subnetted, 2 subnets, 2 masks C 192.168.10.0/24 is directly connected, GigabitEthernet0/0/0 L 192.168.10.1/32 is directly connected, GigabitEthernet0/0/0 192.168.11.0/24 is variably subnetted, 2 subnets, 2 masks C 192.168.11.0/24 is directly connected, GigabitEthernet0/0/1 L 192.168.11.1/32 is directly connected, GigabitEthernet0/0/1 209.165.200.0/24 is variably subnetted, 2 subnets, 2 masks C 209.165.200.224/30 is directly connected, Serial0/1/1 L 209.165.200.225/32 is directly connected, Serial0/1/1 R1#