Ping ny node IPv6 rehetra amin'ny fantsona iray

Andro vitsivitsy sisa no hanombohan'ny fikorianana vaovao amin'ny tahan'ny "Injeniera Network" avy amin'ny OTUS. Amin'io lafiny io, tianay ny hizara aminareo fandikan-teny momba ny lohahevitra.

Ping ny node IPv6 rehetra amin'ny fantsona iray

Andian-dahatsoratra bilaogy momba ny toro-hevitra sy tetika hamahana ny olana momba ny ping IPv6 (ICMPv6 Echo Request/Echo Reply)

Azafady, azafady fa mampiasa Linux aho (indrindra Fedora 31), na izany aza, ny baikon'ny baiko ping ho an'ny rafitra miasa hafa dia tokony hitovy be.

Ping ny node IPv6 rehetra amin'ny fantsona iray

Ny toro-hevitra voalohany sy tsotra indrindra dia ny ping ny node IPv6 rehetra amin'ny rohy.

Ny IPv6 dia mampiasa adiresy multicast ho an'ny karazana fifandraisana iray amin'ny maro. Tsy misy adiresy IPv6 fampitana (na fampitana). Izany no mampiavaka ny IPv6 amin'ny IPv4, izay misy karazana adiresy fampielezam-peo, ohatra, ny adiresy "fampitaovana voafetra" 255.255.255.255 [RFC1122].

Na izany aza, misy ny adiresy IPv6 "all-nodes multicast", noho izany dia hampiasa izany izahay hanesorana ny node IPv6 rehetra amin'ny rohy. (Ny adiresin'ny "broadcast" dia adiresy multicast nomena anarana manokana, izay vondrona multicast izay ahitana ny nodes rehetra. Mariho fa, ohatra, ny bitika adiresy "groupe" na multicast dia alefa amin'ny adiresy fampielezam-peo Ethernet amin'ny sosona rohy. ).

Adiresy IPv6 multicast rehetra ho an'ny fantsona: ff02::1. ff manondro adiresy IPv6 multicast. Ny 0 manaraka dia ny ampahany amin'ny sainam-pirenena misy bitika tsy voafaritra.

bebe kokoa 2 mamaritra ny faritry ny vondrona multicast. Tsy toy ny adiresy IPv4 multicast, ny adiresy IPv6 multicast dia manana sehatra. Ny sandan'ny scope dia manondro ny ampahany amin'ny tambajotra izay ahafahan'ny fonosana multicast alefa. Raha vantany vao tonga any amin'ny sisin'ny faritra voatondro ny fonosana iray, dia tsy maintsy ariana ilay fonosana, na tsy aotra ny saha Hop Count. Mazava ho azy fa raha mahatratra aotra ny isan'ny hop alohan'ny hahatongavana amin'ny sisin-tanin'ny vondrona multicast voafaritra dia averina avy hatrany koa izany. Ity ny lisitra feno amin'ny sehatra IPv6 multicast.

Farany, ::1 mamaritra vondrona multicast nodes rehetra.

Momba ny adiresy ff02::1 Marihina fa manjavozavo izany. Ao amin'ny mpampiantrano IPv6 manana interface maro, toy ny router na mpampiantrano multihomed, ny adiresy ff02::1 tsy misy na inona na inona azonao hamaritana hoe interface tsara handefasana ny fangatahana echo ICMPv6 na manantena ny hahazo valiny echo ICMPv6 rehefa tonga izy ireo. ff02::1 dia manan-kery ary azo ampiasaina amin'ny fifandraisana rehetra sy ny fantsona mifatotra amin'ny node multi-interface.

Noho izany, rehefa mametaka ny node IPv6 amin'ny rohy iray isika, dia mila milaza ihany koa ny fitaovana ping ho an'ny IPv6, izay interface tsara ampiasaina.

Famaritana ny Interface - Safidy andalana baiko

Araka ny efa hitantsika, ny adiresy multicast rehetra node izay tiantsika hampiasaina dia − ff02::1 - tsy manome fampahalalana momba ny interface tsara handefasana sy handraisana ny fangatahana akora ICMPv6 sy ny fonosana valim-bavany.

Noho izany, ahoana no hamaritana ny interface ampiasaina ho an'ny habaka adiresy multicast na toerana adiresy Unicast Link-Local?

Ny fomba voalohany sy mazava indrindra dia ny manome azy io ho mari-pamantarana amin'ny fampiharana ampiasainay.

Ho an'ny utility ping omenay amin'ny alalan'ny safidy -I.

[mark@opy ~]$ ping -w 1 -I enp3s2 ff02::1
ping: Warning: source address might be selected on device other than: enp3s2
PING ff02::1(ff02::1) from :: enp3s2: 56 data bytes
64 bytes from fe80::1d36:1fff:fefd:82be%enp3s2: icmp_seq=1 ttl=64 time=0.438 ms
64 bytes from fe80::f31c:ccff:fe26:a6d9%enp3s2: icmp_seq=1 ttl=64 time=0.589 ms (DUP!)
64 bytes from fe80::7e31:f5ff:fe1b:9fdb%enp3s2: icmp_seq=1 ttl=64 time=5.15 ms (DUP!)
64 bytes from fe80::f7f8:15ff:fe6f:be6e%enp3s2: icmp_seq=1 ttl=64 time=58.0 ms (DUP!)
64 bytes from fe80::877d:4ff:fe1a:b881%enp3s2: icmp_seq=1 ttl=64 time=62.3 ms (DUP!)
64 bytes from fe80::877d:4ff:fe1a:ad79%enp3s2: icmp_seq=1 ttl=64 time=62.8 ms (DUP!)
 
--- ff02::1 ping statistics ---
1 packets transmitted, 1 received, +5 duplicates, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.438/31.544/62.786/29.566 ms
[mark@opy ~]$

Amin'ny fampiasana ity ping multicast rehetra ity dia nahazo valiny avy amin'ny node IPv6 6 izahay. Avy amin'ny adiresy node Link-Local IPv6 ny valiny, manomboka amin'ny prefix fe80::/10.

fa ping dia tsy manohy mandefa fangatahana echo ICMPv6 mandritra ny fotoana tsy voafetra mandra-pahatapantsika azy, matetika no mamaritra ny isan'ny fonosana halefa amin'ny alalan'ny safidy -c. Na izany aza, izany koa dia manakana ny ping tsy hanaiky sy hampiseho mihoatra ny iray ICMPv6 valinteny echo rehefa mandefa multicast ICMPv6 fangatahana ako. Fa kosa, nampiasa ny safidy -w izahay mba hamaritana fa ny ping dia tokony ho vita aorian'ny 1 segondra, na firy na firy ny fangatahana echo ICMPv6 na valin-kafatra nalefa na voaray.

Ny zavatra iray hafa tokony hotandremana dia (DUP!) mivoaka amin'ny valiny faharoa sy manaraka. Ireo fonosana ireo dia fantatra ho valinteny dika mitovy satria manana sanda ICMP mitovy amin'ny fangatahana echo ICMPv6 tsirairay izay nalefa tany amin'ny toerana voalohany. Mipoitra izy ireo satria ny fangatahan'ny ICMPv6 multicast echo dia miteraka valiny unicast tsirairay. Aseho ao amin'ny famintinana ny antontan'isa ihany koa ny isan'ny dika mitovy.

Famaritana ny Interface - Zone ID

Ny fomba iray hafa hanehoana ny interface ampiasaina dia ao anatin'ny mari-pamantarana adiresy IPv6.

Afaka mahita ohatra amin'izany isika amin'ny famoahana ping, izay misy ny adiresin'ny mpampiantrano IPv6 mamaly ihany koa ny tovana. %enp3s2, ohatra:

64 bytes from fe80::1d36:1fff:fefd:82be%enp3s2: icmp_seq=1 ttl=64 time=0.438 ms

Ity fomba fanondroana interface tsara ity dia voafaritra amin'ny fomba ofisialy ao amin'ny [RFC4007], "Iv6 Defined Address Architecture." Na dia antsoina matetika aza izy ireo hoe interface tsara rafitra miasa, dia mamaritra zavatra amin'ny ankapobeny kokoa izy ireo — “faritra” na “sehatra”.

Ny anton'ny fananana faritra ankapobeny na faritra midadasika kokoa dia satria, araka ny voalaza ao amin'ny [RFC4007], ny node IPv6 dia afaka manana fifandraisana IPv6 maromaro mifandray amin'ny fantsona iray ihany. Ireo fifandraisana ireo dia mpikambana ao amin'ny faritra iray ihany.

Tokony ho azo atao ny manambatra interface maro ao anatin'ny faritra iray eo ambanin'ny rafitra miasa; Amin'izao fotoana izao dia tsy fantatro raha azo atao amin'ny Linux izany na ahoana no hanaovana izany.

Fampiasana ny tovana %<zone_id>, azontsika esorina ny safidy andalana baiko -I ping.

[mark@opy ~]$ ping -w 1 ff02::1%enp3s2
PING ff02::1%enp3s2(ff02::1%enp3s2) 56 data bytes
64 bytes from fe80::2392:6213:a15b:66ff%enp3s2: icmp_seq=1 ttl=64 time=0.106 ms
64 bytes from fe80::1d36:1fff:fefd:82be%enp3s2: icmp_seq=1 ttl=64 time=0.453 ms (DUP!)
64 bytes from fe80::f31c:ccff:fe26:a6d9%enp3s2: icmp_seq=1 ttl=64 time=0.606 ms (DUP!)
64 bytes from fe80::7e31:f5ff:fe1b:9fdb%enp3s2: icmp_seq=1 ttl=64 time=6.23 ms (DUP!)
64 bytes from fe80::f7f8:15ff:fe6f:be6e%enp3s2: icmp_seq=1 ttl=64 time=157 ms (DUP!)
64 bytes from fe80::877d:4ff:fe1a:ad79%enp3s2: icmp_seq=1 ttl=64 time=159 ms (DUP!)
64 bytes from fe80::877d:4ff:fe1a:b881%enp3s2: icmp_seq=1 ttl=64 time=161 ms (DUP!)
64 bytes from fe80::23d:e8ff:feec:958c%enp3s2: icmp_seq=1 ttl=64 time=179 ms (DUP!)
 
--- ff02::1%enp3s2 ping statistics ---
1 packets transmitted, 1 received, +7 duplicates, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.106/82.858/179.216/81.281 ms
 
[mark@opy ~]$

Rohy-Local Address Valiny

Avy amin'ity ping multicast rehetra ity dia nahazo valiny tokana 6 izahay.

Ireo valinteny ireo dia avy amin'ny adiresy mpampiantrano Unicast Link-Local IPv6. Ohatra, ity ny valiny voalohany:

64 bytes from fe80::2392:6213:a15b:66ff%enp3s2: icmp_seq=1 ttl=64 time=0.106 ms

Ny adiresy Unicast Link-Local IPv6 dia takiana amin'ny interface tsara IPv6 rehetra [RFC4291], "IP Version 6 Addressing Architecture". Ny anton'izany dia satria ny node IPv6 dia manana adiresy IPv6 unicast foana, izay azony ampiasaina farafaharatsiny mba hifandraisana amin'ny node hafa amin'ny rohy mifandray mivantana. Anisan'izany ny fifandraisana amin'ny fampiharana amin'ny mpampiantrano hafa amin'ny alàlan'ny adiresy mpampiantrano Link-Local.

Manamora ny famolavolana sy ny fampiharana ny protocols toy ny IPv6 Neighbor Discovery sy OSPFv3 izany. Izy io koa dia mamela ny fampiharana mpampiasa farany amin'ny mpampiantrano mba hifandray amin'ny fantsona tsy mila fotodrafitrasa IPv6 hafa amin'ny fantsona. Ny fifandraisana mivantana eo amin'ny mpampiantrano IPv6 mifandray dia tsy mila mpizara IPv6 na mpizara DHCPv6 amin'ny fifandraisana.

Ny adiresy Link-Local dia manomboka amin'ny prefix 10 bit fe80, arahin'ny 54 zero bits ary avy eo ny 64-bit interface identifier (IID). Ao amin'ny valiny voalohany etsy ambony 2392:6213:a15b:66ff dia 64-bit IID.

Looped Multicast

Amin'ny alàlan'ny default, ny fonosana multicast dia averina ao anaty node izay nandefa azy ireo. Izany dia mitranga amin'ny adiresy IPv6 sy IPv4.

Ny anton'io fihetsika tsy mety io dia ny hoe rehefa alefa ny fonosana multicast, dia mety hisy ihany koa ny fampiharana multicast eo an-toerana mihaino mandeha amin'ny mpampiantrano fandefasana azy, ary koa any amin'ny toerana iray ao amin'ny tambajotra. Ity fampiharana eo an-toerana ity dia tsy maintsy mahazo fonosana multicast ihany koa.

Afaka mahita an'ity multicast local loop ity isika amin'ny famoahana ping:

[mark@opy ~]$ ping -w 1 ff02::1%enp3s2
PING ff02::1%enp3s2(ff02::1%enp3s2) 56 data bytes
64 bytes from fe80::2392:6213:a15b:66ff%enp3s2: icmp_seq=1 ttl=64 time=0.106 ms
64 bytes from fe80::1d36:1fff:fefd:82be%enp3s2: icmp_seq=1 ttl=64 time=0.453 ms (DUP!)
...

Ny valiny voalohany sy haingana indrindra (0,106 ms raha ampitahaina amin'ny 0,453 ms) dia avy amin'ny adiresy Link-Local voarindra ao amin'ny interface. enp3s2.

[mark@opy ~]$ ip addr show dev enp3s2 | grep fe80
    inet6 fe80::2392:6213:a15b:66ff/64 scope link noprefixroute 
[mark@opy ~]$

Utility ping dia manome fomba hanakanana ny fanehoan-kevitra multicast eo an-toerana amin'ny fampiasana ny parameter -L. Raha mandefa ping multicast rehetra miaraka amin'ity saina ity isika, dia voafetra amin'ny nodes lavitra ny valiny. Tsy mahazo valiny avy amin'ny adiresy Link-Local amin'ny interface fandefasana.

[mark@opy ~]$ ping -L -w 1 ff02::1%enp3s2
PING ff02::1%enp3s2(ff02::1%enp3s2) 56 data bytes
64 bytes from fe80::1d36:1fff:fefd:82be%enp3s2: icmp_seq=1 ttl=64 time=0.383 ms
 
64 bytes from fe80::f31c:ccff:fe26:a6d9%enp3s2: icmp_seq=1 ttl=64 time=0.467 ms (DUP!)
...

Rohy Ping-Adiresy eo an-toerana

Araka ny mety ho eritreretinao, ny adiresin'ny Link-Local unicast irery ihany koa dia tsy manome fampahalalana ampy hanondroana izay interface tsara ampiasaina hanatrarana azy ireo. Tahaka ny amin'ny ping multicast rehetra, mila mamaritra ny interface ho toy ny mari-pamantarana baiko ihany koa isika ping na ID faritra misy adiresy rehefa ping ny adiresy Link-Local.

Amin'ity indray mitoraka ity dia azontsika ampiasaina -cmba hamerana ny isan'ny fonosana sy valiny nalefa sy voaray ping, satria manao ping unicast izahay.

[mark@opy ~]$ ping -c 1 fe80::f31c:ccff:fe26:a6d9%enp3s2
 
PING fe80::f31c:ccff:fe26:a6d9%enp3s2(fe80::fad1:11ff:feb7:3704%enp3s2) 56 data bytes
64 bytes from fe80::f31c:ccff:fe26:a6d9%enp3s2: icmp_seq=1 ttl=64 time=0.395 ms
 
--- fe80::f31c:ccff:fe26:a6d9%enp3s2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.395/0.395/0.395/0.000 ms
[mark@opy ~]$

Ping (rehetra) ny adiresy IPv6 hafa?

Ao amin'ity lahatsoratra ity, hitanay ny fomba ping ny node IPv6 rehetra amin'ny fantsona iray mampiasa ny adiresy IPv6 multicast rehetra. ff02::1. Hitanay ihany koa ny fomba hamaritana ny interface tsara ampiasaina amin'ny adiresy IPv6 multicast rehetra, satria tsy afaka manome an'io fampahalalana io ny adiresy. Nampiasa ny safidy andalana baiko izahay ping, na mamaritra ny interface amin'ny fampiasana ny suffix %<zone_id>.

Avy eo dia nianatra momba ny adiresy Unicast Link-Local izahay, izay adiresy ampiasaina hamaliana ny fangatahana echo ICMPv6 multicast rehetra.

Hitanay ihany koa ny fomba averenan'ny fonosana multicast amin'ny node fandefasana amin'ny alàlan'ny default ary ny fomba hanafoanana izany ho an'ny utility ping.

Farany, nandefa adiresy Link-Local tokana izahay tamin'ny fampiasana ny tovana %<zone_id>, satria ny adiresy Link-Local ihany koa dia tsy manome fampahalalana momba ny interface mivoaka.

Ahoana ny momba ny ping ny node hafa rehetra ary alao ny adiresin'izy ireo unicast (GUA) (izany hoe ny adiresiny ho an'ny daholobe amin'ny Internet) na ny adiresin'izy ireo tokana tokana (ULA)? Hojerentsika amin'ny lahatsoratra bilaogy manaraka izany.

Izay ihany.

Afaka mahafantatra bebe kokoa momba ny taranjay ianao ao amin'ny naoty andro misokatra.

Source: www.habr.com

Add a comment