İkisi arasındaki farkı anlamanın en kolay yolu, öneklerin hiyerarşik doğasını gösteren bir örnektir.
Örnek bir hiyerarşi
Bir ISS'ye RIR (Bölgesel İnternet Sicili) tarafından ön ek tahsis edilmiştir 2001:db8::/32
. Bu önek, ISP'nin BGP aracılığıyla baktığı diğer ISS'lere duyurması gerekeceği için müşterilere teslim edilenlerden farklıdır.
ISS artık bir müşteriye önek tahsis edecek. İlk olarak 2001:db8:0:1::/64
ISS yönlendiricisini CPE (müşteri-tesis ekipmanı) yönlendiricisine bağlayan bağlantıya atarlar . Bu, bir bağlantıya atandığı için bir bağlantı önekidir . Genel bir öneri olarak IPv6'daki tüm bağlantı önekleri olmalıdır /64
.
ISP yönlendiricisi, bu öneki bildiren yönlendirici reklamları gönderir ve CPE, içindeki ISP yönlendiricisini işaret eden harici arabirim için bir adres oluşturmak üzere SLAAC kullanır /64
. Dış arabirimin IP adresini aldığını varsayalım 2001:db8:0:1:42:ff:fe00:42/64
(bu gösterime /64
bağlantı önekinin uzunluğunu hatırlatmak için dahil edilmiştir, ancak bunu da bırakmış olabilirim).
Bu bağlantı öneki, CPE yönlendiricisinin dünyanın geri kalanıyla iletişim kurması için yeterlidir, ancak CPE yönlendiricisinin dahili arabirimine bağlı LAN üzerindeki istemcileri desteklemesine yardımcı olmaz. CPE yönlendiricisinin, bu CPE yönlendiricisi aracılığıyla yönlendirilen LAN için bir önekine ihtiyacı vardır, bu nedenle buna yönlendirilmiş önek denir .
Yönlendirilen önek, statik olarak veya DHCPv6 aracılığıyla yapılandırılabilir. CPE yönlendiricisinin, ISS tarafından sağlanan DHCPv6 sunucusuyla bir önek uzunluğu üzerinde nasıl görüştüğüne ilişkin kesin ayrıntılar bu yanıtın kapsamı dışındadır. Önek heyeti araması size bu konuda daha fazla bilgi verebilir. Diyelim ki yönlendirilmiş önek sona erdi 2001:db8:1::/48
. ISP yönlendiricisinde 2001:db8:1::/48
, ağ geçidinden yönlendirilmesi gerektiğini belirten bir yönlendirme tablosu girişi oluşturulacaktır 2001:db8:0:1:42:ff:fe00:42
. Bu yönlendirme tablosu girişi, yönlendirilen önekin tanımlayıcı özelliğidir.
CPE yönlendiricisinin her dahili LAN'a /48
bir /64
bağlantı öneki atayabileceği birden fazla dahili LAN olabilir . LAN'lardan birinin 2001:db8:1:1::/64
bağlantı öneki olarak atandığını varsayarsak , bu bağlantıdaki bir düğüm adresi 2001:db8:1:1::42:ff:fe00:43
SLAAC aracılığıyla alabilir. Bu düğüm, kablosuz arabirimi için bir önek gerektiren bir kablosuz yönlendirici olabilir. CPE 2001:db8:1:100::/60
, kablosuz yönlendirici için yönlendirilen önek olarak atayabilir ve kablosuz yönlendirici, 2001:db8:1:100::/64
kablosuz arabirim için bağlantı öneki olarak atayabilir .
Şimdi böyle bir kurulumda sahip olduğumuz şey bir önek hiyerarşisidir. Aşağıdakilerin hepsi birbirinin altında yuvalanmıştır:
2001:db8::/32
BGP ilan edilen önek
2001:db8:1::/48
yönlendirilmiş önek
2001:db8:1:100::/60
yönlendirilmiş önek
2001:db8:1:100::/64
bağlantı öneki
Paketler gerçekte nasıl ele alınır?
ISP yönlendiricisi, 2001:db8:0:1::/64
bağlantı öneki olan bir paket aldığında , içindeki ana bilgisayarın MAC adresini bulmak için komşu bulma işlemini gerçekleştirir /64
.
Bu şekilde ISS yönlendiricisinin bağlantı öneki içindeki her IP adresi için ayrı bir komşu önbellek girdisine ihtiyacı olacaktır.
ISP yönlendiricisi 2001:db8:1::/48
yönlendirilmiş bir önek olan bir paket aldığında , ağ geçidinin MAC adresini bulmak için komşu bulma işlemini gerçekleştirir 2001:db8:0:1:42:ff:fe00:42
.
Bu şekilde, ISP yönlendiricisi, paketleri yönlendirilen önek içindeki herhangi bir IP adresine yönlendirmek için ağ geçidi için yalnızca tek bir komşu önbellek girişine ihtiyaç duyar. Bu özellik, internetin ölçeklenebilirliği için çok önemlidir.
Yönlendirilmiş önek eksikliği etrafında çalışma
Bazen müşteriler, yalnızca bir bağlantı öneki ve yönlendirilmiş önek sağlamayan bir İSS'ye takılı kalıyorlar. Böyle bir durumda, müşterinin bağlantı önekinin belirli bir alt aralığı içindeki tüm IP adresleri için komşu keşfine yanıt veren bir arka plan programı yüklemesi mümkündür. Bunun, bu öneki yönlendirilmiş bir önek olarak yapılandırmaya benzer bir etkisi olacaktır. Ancak birkaç dezavantajı var:
- Genel olarak, yönlendirilen öneklerin daha kısa olması gerekir
/64
, ancak komşu keşif isteklerine yanıt veren arka plan programı yalnızca daha uzun bir "yönlendirilmiş" önek oluşturabilir /64
.
- Bir IP adresi, ISS yönlendiricisindeki komşu önbellekte olmadığında, fazladan bir gidiş dönüş nedeniyle gecikmeyi biraz artırır.
- Çok daha sık komşu keşfi gerektiğinden ISS yönlendiricisindeki yükü artırır. ISS yönlendiricisinin paketleri yalnızca donanımda zaten bilinen bir hedef öneklere iletmesi muhtemeldir, ancak komşu keşfi yazılımda yapılacaktır.
- ISP yönlendiricideki bellek tüketimini artırır. İSS her müşteriye yönlendirilmiş bir önek tahsis ederse, müşteri başına yalnızca tek bir komşu önbellek girdisine sahip olmaktan kolayca kurtulabilirler. Ancak komşu cevap veren daemon ile bu, müşteri başına binlerce girişe dönüşebilir.
ISS yönlendiricisindeki işlem yükü önemli bir sorun olabilir. Bazı yönlendiriciler (içinde gerçek bir DoS saldırılarına dönüştü komşu keşfini gerek paketlerin sel taşıma ve uzun bağlantı önekleri kullanılarak bu kadar kötü olmuştur /120
- 127
Böyle DoS saldırıları için geçici çözüm olarak kullanılan aralığın).
Yönlendirici DoS saldırısına karşı savunmasız olmasa bile, yukarıda açıklanan geçici çözüm kullanıldığında komşu önbellek girdileri için gereken bellek, ISS için yönlendirilmiş bir önek için IP adreslerinden çok daha pahalıdır, bu nedenle çok az neden vardır. bir ISS'nin yönlendirilmiş bir önek dağıtmayı reddetmesi.
Noktadan noktaya bağlantılar etrafında özel durumlar
Noktadan noktaya bağlantılar (6'ya 4 tünel ve PPP bağlantısı gibi) komşu keşfine gerek yoktur. Böyle bir bağlantıya paket göndermek için yalnızca bir yön vardır ve paketi göndermeden önce herhangi bir donanım adresine bakılması gerekmez.
Bu, komşu keşfinin genel giderinin böyle bir bağlantıda bir sorun olmadığı anlamına gelir. Bir noktadan noktaya bağlantının bir ucuna sahip olmak, uç noktaların hangi adresleri kimin kullandığına dair bazı anlaşmalar olduğu sürece sorun değildir. Komşu keşfinin olmaması, yinelenen adres algılamanın olmadığı anlamına gelir, bu nedenle her iki uç nokta da beklendiği gibi çalışmayacak aynı adresi kullanmaya çalışırsa (herhangi bir yayın adresi olarak davranmasını beklemiyorsanız).
Noktadan noktaya bağlantılar etrafında akılda tutulması gereken bir uyarı var. Her uç nokta, kendisine atanmamış olan bağlantıdaki tüm adreslerin diğer uca atandığını varsayar. Bu, bir noktadan noktaya bağlantıdaki kullanılmayan adreslerin bir yönlendirme döngüsünü tetiklemeye eğilimli olduğu anlamına gelir. Böyle bir yönlendirme döngüsü (ve diğer birkaç yönlendirme döngüsü durumu), bir paketi asla doğrudan alındığı düğüme geri göndermeyen bir uç nokta tarafından önlenebilir. Bu nedenle, bir uçtan noktaya bağlantıdan alınan bir paket, bir uç nokta bu hakkı sağladığı sürece, yönlendirme döngüsü bozulduğu için aynı noktadan noktaya bağlantı üzerinden geri gönderilmemelidir. Ethernet üzerindeki bir yan düğüm olarak, bir paket almak ve aynı bağlantıya geri iletmek geçerlidir, ancak alındığı yerden aynı MAC adresine iletilecekse bunu yapmaktan kaçınmak iyi bir fikirdir.
Noktadan noktaya bağlantıdaki çoğu adres, komşunun keşfine gerek kalmadan bağlantının diğer ucuna iletileceğinden, yönlendirilmiş bir önekle çok benzer görünüyor. Örneğin, ISP 2001: db8: 42 :: / 64 uç noktalarına atanmış uç noktalara adresler atanmışsa 2001: db8: 42 :: 1 ve 2001: db8: 42 :: 2, daha sonra çoğu adrese paketler 2001'de: db8: 42 :: / 64, ISP'den müşteriye, ağ geçidi olarak 2001: db8: 42 :: 2 kullanılarak yönlendirilmiş bir önek olsaydı aynı şekilde iletilecektir.
Bu, belirli bir hackin mümkün olduğu anlamına gelir. CPE'de, aslında LAN üzerinde 2001: db8: 42 :: / 64 bağlantı öneki olarak yapılandırmak mümkündür. CPE'nin belirli bir hedefin hangi iki bağlantıdan hangisinin açık olduğunu bilmesi için, ISS'ye doğru noktadan noktaya bağlantıdaki gerçek yapılandırmanın 2001: db8: 42 :: / 126 olarak değiştirilmesi gerekir. Tüm bunlar küçük bir istisna dışında çalışır, LAN'daki ana bilgisayarlar 2001'de dört IP adresiyle iletişim kuramaz: db8: 42 :: / 126. Muhtemelen bunlarla iletişim kurmaları gerekmediğinden, bu büyük bir sorun değildir. Bununla birlikte, bu hack'in kullanılması önerilmez, uygun yapılandırma ISS'den yönlendirilmiş bir önek almaktır.
Adresleri kaydetmek için başka bir saldırı, yönlendirilmiş bir önek için yalnızca genel adresler atamak ve noktadan noktaya bağlantı için RFC 4193 adreslerini kullanmaktır. Ancak bu aptalca bir hack çünkü mevcut olmayan bir sorunu çözmek için hala bazı dezavantajlar getiriyor.
Noktadan noktaya bağlantıya hiç önek atamamak da mümkündür. Her uç noktanın üzerinde genel bir adresi olduğu başka bir arabirim olduğu sürece, noktadan noktaya bağlantı üzerinden iletişim kurarken diğer arabirime atanan adresi kullanabilirler. Bu yaklaşımdan kaynaklanan herhangi bir dezavantaj bilmiyorum, bu yüzden noktadan noktaya bağlantılara bu yaklaşımın ağ yapılandırmanızı basitleştirdiğini fark ederseniz, ancak adresleri kaydetmek için bir önlem olarak kullanmayın.
Yönlendirilmiş bir önek için kullanım örnekleri
- İlk örneğimde olduğu gibi hiyerarşik yönlendirme , yönlendirilen öneklerin ne için tasarlandığıdır.
- VPN / tüneller , önek gerektiren yönlendiriciler hiyerarşisine başka bir katman ekler. Gerçek donanımdan ziyade sanal olmalarına rağmen, adresleme açısından farklı değildirler ve tıpkı fiziksel bir bağlantının yaptığı gibi yönlendirilmiş bir öneklere ihtiyaç duyarlar.
- Bir ana bilgisayara birçok adres atama . Tek bir ana bilgisayara çok sayıda adres atamak için kullanım örnekleri vardır. Birkaç adres için, her biri için komşu keşfi ve adresler kadar önbellek girişi ile atanabilir ve yönetilebilirler. Ancak binlerce adrese ihtiyaç duyulursa, yönlendirilmiş bir önek daha iyidir.
Son noktanın daha ayrıntılı bir örneği DNS özyinelemeleri olabilir. DNSSEC'nin IPv4 ile savaşmayı bitirene kadar çok fazla çekiş görmediğinden, DNS zehirlenmesine karşı başka önlemler alınması gerekiyor. Mümkün olduğunca sorgulara entropi kazandırmak için çaba harcanmıştır. Kimlik ve port numarası en fazla 32 bit entropi alabilir, çözümlenecek alan adında büyük ve küçük harf karıştırılırsa, istekte birkaç bit daha tutulabilir. Nadiren bu şekilde toplamda 48 bitten fazla olacaksınız. /64
DNS recursor'ına bir tam atamak , entropinin bir seferde 64 bit artırılmasına izin verecektir, bu da diğer tüm çabalardan daha fazladır.