Denemelerin Yapılması
Önceki Linux Gezici IPv6 NASIL Sonraki
Denemelerin Yapılması
Deneme öncesi
Bütün yapılandırmaları önceki bölümde anlatıldığı gibi yapın. Ev ağında ve ziyaret edilen ağda farklı ESSID'lere sahip olunması özellikle önemlidir.
MN üzerinde gezici IPv6'yı başlattığınızda aşağıdaki gibi yönlendirici talebi iletileri göreceksiniz:
# tcpdump -i eth0 -vv ip6 or proto ipv6

...
13:32:54.681763 fe80::202:a5ff:fe6f:a08a > ff02::2: icmp6: router solicitation \
(src lladdr: 0:2:a5:6f:a0:8a) (len 16, hlim 255)

13:32:55.681763 fe80::202:a5ff:fe6f:a08a > ff02::2: icmp6: router solicitation \
(src lladdr: 0:2:a5:6f:a0:8a) (len 16, hlim 255)

13:32:57.681765 fe80::202:a5ff:fe6f:a08a > ff02::2: icmp6: router solicitation \
(src lladdr: 0:2:a5:6f:a0:8a) (len 16, hlim 255)
...

Hareketin Farkedilmesi
Temel olarak hareket algılama, hareketli düğüm yeni bir yönlendirici bulmak zorunda olduğunda (genellikle yeni bir bağlantıda) öntanımlı yönlendiricinin artık iki yönde de ulaşılamaz olduğu anı tespit etmek için Komşunun Ulaşılamazlığının Algılanması (Neighbor Unreachability Detection) yöntemini kullanır.
Neler olup bittiğini görmek için aşağıdaki komutların her birini birer xterm'de çalıştırın:
# watch ifconfig eth0
# watch route -A inet6
# tcpdump -i eth0 -vv ip6 or proto ipv6
Başka bir ağa "hareket etmek" için, MN'de aşağıdaki komutu çalıştırabilirsiniz:
# iwconfig eth1 essid visitnet
MN artık diğer telsiz ağdadır, yönlendirici talebinde bulunduğundan dolayı (multicast) bizim AR'miz onun önekiyle birlikte cevap verecektir. MN aldığı önek ve kendi MAC adresiyle yeni IPv6 adresini yapılandıracaktır. ifconfig eth0 komutunu verirseniz yeni IPv6 adresinizi görürsünüz:
# ifconfig eth0
eth0  Link encap:Ethernet  HWaddr 00:90:7D:F3:03:1A
      inet6 addr: fec0:106:1100:0:290:7dff:fef3:31a/64 Scope:Site   
      inet6 addr: fec0:106:2700:0:290:7dff:fef3:31a/64 Scope:Site   
      inet6 addr: fec0:106:2700::4/64 Scope:Site                    
      inet6 addr: fe80::290:7dff:fef3:31a/64 Scope:Link             
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:854 errors:154 dropped:154 overruns:0 frame:148
      TX packets:293 errors:58 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:100
      RX bytes:96536 (94.2 Kb)  TX bytes:44664 (43.6 Kb)
      Interrupt:3 Base address:0x100
1
Yeni "dış" adres, AR'nin öneki ve MAC adresinin birleşiminden oluşturulmuştur.
2
Gereksiz ev ağı adresi (HA radvd iletileri ve MN autoconf'unun true değerine ayarlanmış olmasından dolayı).
3
orjinal (ev) adres.
4
Sistem açılışı sırasında üretilen yerele özgü adres.
Nerdeyse aynı zamanda MN, HA'ya bir bağlama güncellemesi uygulayacaktır. Tcpdump pencerenizde HA'ya gideceği belirlenmiş paketler göreceksiniz. Bağlama güncellemesinin yollandığını ve MN tarafından alındığını doğrulamak için:
# mipdiag -s
Mobile IPv6 Statistics
NEncapsulations           : 0
NDecapsulations           : 0
NBindUpdatesRcvd          : 0
NBindAcksRcvd             : 1      
NBindNAcksRcvd            : 0
NBindRqsRcvd              : 0
NBindUpdatesSent          : 1      
NBindAcksSent             : 0
NBindNAcksSent            : 0
NBindRqsSent              : 0
NBindUpdatesDropAuth      : 0
NBindUpdatesDropInvalid   : 0
NBindUpdatesDropMisc      : 0
NBindAcksDropAuth         : 0
NBindAcksDropInvalid      : 0
NBindAcksDropMisc         : 0
NBindRqsDropAuth          : 0
NBindRqsDropInvalid       : 0
NBindRqsDropMisc          : 0
1
Bir bağlanma izni için tekmil (ACK) alındı.
2
Bağlanma izni bilgisi (UPDATE) gönderildi.
Bağlantıyı aşağıdaki komut ile de doğrulayabilirsiniz (MN üzerinde):
# mipdiag -l
Mobile IPv6 Binding update list
Recipient CN: fec0:106:2700::2
BINDING home address: fec0:106:2700::4 care-of address: ¬
 fec0:106:1100:0:290:7dff:fef3:31a
        expires: 936 sequence: 0 state: 1
        delay: 3 max delay 32 callback time: 736
Ayrıca bunu istatistik seçeneği (-s) ve "bağlama önbelleği" (-c) seçeneği ile HA üzerinde de doğrulayabilirsiniz:
# mipdiag -c
Mobile IPv6 Binding cache
Home Address      Care-of Address                    Lifetime  Type
fec0:106:2700::4  fec0:106:1100:0:290:7dff:fef3:31a  971       2
ping6
MN'den AR'nin eth1 arabirimini pinglemeyi deneyebilirsiniz (fec0:106:1100::1):
# ping6 fec0:106:1100::1
PING fec0:106:1100::1(fec0:106:1100::1) from fec0:106:2700::4 : 56 data bytes
64 bytes from fec0:106:1100::1: icmp_seq=1 ttl=62 time=8.01 ms
64 bytes from fec0:106:1100::1: icmp_seq=2 ttl=62 time=8.02 ms
...
Tcpdump kullanarak paketlerin nasıl yolculuk ettiklerini görebilirsiniz
12:13:51.789688 fec0:106:1100:0:202:a5ff:fe6f:a08a > fec0:106:2700::2: \    
fec0:106:2700::4 > fec0:106:1100::1: icmp6: echo request \   
(len 64, hlim 64) (len 104, hlim 255)

12:13:51.797675 fec0:106:2700::2 > fec0:106:1100:0:202:a5ff:fe6f:a08a: \   
fec0:106:1100::1 > fec0:106:2700::4: icmp6: echo reply \
(len 64, hlim 62) (len 104, hlim 253)
1
Paket MN'nin yeni IPv6 adresini kullanarak ilk olarak MN'den HA'ya gider.
2
Daha sonra HA'dan AR'ye.
3
AR HA'ya yanıt verir ve paketleri MN'ye tüneller.
Artık MN üzerinde güncellenmiş istatistikleri görebilirsiniz:
# mipdiag -s
Mobile IPv6 Statistics
NEncapsulations           : 56
NDecapsulations           : 25
...
Çekirdek IP yönlendirme tablosu
MIPv6'nın gerçekleştirdiği ilginç bir şey de öntanımlı rotanın bir tünele değiştirilmesidir. Yeni öntanımlı rota aşağıdaki hali alır:
# route -A inet6
Kernel IPv6 routing table
Destination      Next Hop       Flags Metric Ref    Use Iface
::/0             ::             UD    64     0        0 ip6tnl1
....
Böyle bir öntanımlı rota eklenmemişse, kendiniz ekleyebilirsiniz:
# ip route ::/0 via dev ip6tnl
Farklı dış yerel ağlarda gezinme
Ziyaret edilen ağlarda gezinmek tek bir ağı gezmekten farklı değildir. Aklınızda olması gereken tek şey her ziyaret edilen ağ için yeni bir adres oluşturacağınızdır.
Şekil 6.3. MN'nin farklı yerel ağlarda gezinmesi
  1. Yukarıdaki şekilde, MN önce fec0:106:1100::/64 ağını (visitnet) ziyaret eder.
  2. MN bundan sonra fec0:106:1000::/64 ağını (visitnet2) ziyaret eder.
  3. visitnet2'deyken MN yeni bir IPv6 adresi oluşturur ve HA'ya yeni bir bağlama güncellemesi yapar.
  4. Sonra MN eve geri döner. (Bir sonraki bölüme bakınız.)
fec0:106:1100::/64 adresi yerine fec0:106:1000::/64 adresini kullanması dışında visitnet2'deki AR aynen diğer AR (visitnet'teki) gibi yapılandırılmıştır.
Gezici düğümün visitnet'ten visitnet2' ye gitmesini sağlamak için aşağıdaki komut kullanılır (MN üzerinde):
# iwconfig eth0 essid visitnet2
Bu komutla MN'nin kendi kendini yeni ağa göre yapılandırdığını göreceksiniz:
# ifconfig eth0
eth1  Link encap:Ethernet  HWaddr 00:90:7D:F3:03:1A
      inet6 addr: fec0:106:1000:0:290:7dff:fef3:31a/64 Scope:Site   
      inet6 addr: fec0:106:1100:0:290:7dff:fef3:31a/64 Scope:Site
      inet6 addr: fec0:106:2700:0:290:7dff:fef3:31a/64 Scope:Site
      inet6 addr: fec0:106:2700::4/64 Scope:Site
      inet6 addr: fe80::290:7dff:fef3:31a/64 Scope:Link
      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
      RX packets:1073 errors:212 dropped:212 overruns:0 frame:204
      TX packets:371 errors:72 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:100
      RX bytes:120340 (117.5 Kb)  TX bytes:56912 (55.5 Kb)
      Interrupt:3 Base address:0x100
1
visitnet2'deki otomatik yapılandırılmış yeni adres.
Dikkat
Yeni bir ağa geldiğinizde MN üzerindeki gezici-ipv6'yı yeniden başlatmanız gerekebilir!>
# /etc/init.d/mobile-ip6 restart
Stopping Mobile IPv6: OK
Starting Mobile IPv6: OK
Bu durumda MN HA'ya yeni bir bağlama güncellemesi gerçekleştirecektir. Yeni "konuma bağlı adres"e (care-of address) dikkat edin:
# mipdiag -l
Mobile IPv6 Binding update list
Recipient CN: fec0:106:2700::2
BINDING home address: fec0:106:2700::4 care-of address: ¬
 fec0:106:1000:0:290:7dff:fef3:31a
    expires: 973 sequence: 14 state: 1
    delay: 3 max delay 32 callback time: 773
HA üzerinde güncellenmiş "bağlama önbelleği"ni de görebilirsiniz:
# mipdiag -c
Mobile IPv6 Binding cache
Home Address      Care-of Address                    Lifetime  Type
fec0:106:2700::4  fec0:106:1000:0:290:7dff:fef3:31a  943       2
Eve Dönüş
MN'yi eve geri getirmek için aşağıdaki komutu çalıştırmanız yeterli olacaktır:
# iwconfig eth0 essid homenet
HA radvd mesajlarını HA-bit kümeleriyle (AdvHomeAgentFlag) yolladığından MN eve döndüğünü bilecektir, bakınız Ev yetkilisi üzerinde radvd yapılandırması.
HA'da bağlanma önbellek bilgisi boşaldığından MN'nin "evde olduğunu" görebilirsiniz:
Mobile IPv6 Binding cache
Home Address      Care-of Address                     Lifetime  Type
Gerçek yaşam testi - pürüzsüzlük
Gezici IP'nin nasıl çalıştığını gerçekten hissetmek için GnomeMeeting'i kullanın (GnomeMeeting şekline bakın ve bir netmeeting başlatın. Dikkat! IPv6 desteği almak için GnomeMeeting'in en son sürümünü kullanmalısınız). Bir "gezinti" yapın, yağdan kıl çekercesine işlediğini göreceksiniz.
Şekil 6.4. GnomeMeeting
Önceki Üst Ana Başlık Sonraki
Deneme ortamı Başlangıç SSS
Bir Linux Kitaplığı Sayfası