IPv6 Geri Döngü Adresleri (127.xxx'e eşdeğer)


16

Birden fazla web sitesi için ayrı bir geri döngü adresine sahip olduğum bir geliştirme ortamım var.

Örneğin, aşağıdakiler var:

127.0.0.1 www.example.com
127.0.0.2 foo.example.com
127.0.0.3 bar.example.com
127.0.0.4 waffles.example.com

IPv6 için eşdeğer bir çözüm istiyorum.

Zaten bir geri döngü adresi olarak :: 1 kullanabileceğinizi biliyorum, ancak :: 2, :: 3, vb.

IPv6'da başka geri döngü adresleri var mı? Birden fazla benzersiz geri döngü adresine sahip olmanın bir yolu var mı?


1
Ben tavsiye ederim :: ffff: 7f00: 1, :: ffff: 7f00: 2, vb, ama şüphesiz birisi bana çürük meyve atardı.
womble

IPv6 arabirimi yerel çok noktaya yayın kapsamında bir şeyler deneyebilirsiniz. Bu, ana makinenize geri dönecek ve çok geniş bir aralık. Sizin için işe yarayıp yaramayacağı, ne yapmaya çalıştığınıza bağlı olacaktır.
Ron Maupin

Yanıtlar:


13

Teknik olarak :: 2, :: 3 vb. "0.0.0.0/96", "ipv4 uyumlu ipv6 adresi" aralığıdır. Kullanımdan kaldırıldı, ancak muhtemelen bu aralığı kullanmak istemiyorsunuz.

Laboratuvar ortamı için benzersiz yerel adresleme kullanın. Https://www.ultratools.com/tools/rangeGenerator adresine gidin ve kendinize bir önek oluşturun. Ardından, bu önekten istediğiniz adresleri seçebilir ve geri döngü arayüzüne atayabilirsiniz.


Neden olmasın :: 127.0.0.0/96?
Todd

9

Geridöngü adresiniz :: 1/128. Alt ağın, onu yalnızca bir ana bilgisayarla sınırlayan genişliğine dikkat edin. alt ağ maskesini daha geniş bir şeye değiştirin ve yönlendirme tablonuzu kontrol edin. Veya yerel bağlantı adreslerini kullanın.


1
Windows veya linux'un herhangi birinde veya her ikisinde de, geri döngü arabirimine ek IPv6 adreslerinin nasıl bağlanacağı daha iyi olurdu. IPv4'te 127.0.0.1/8 ve IPv6'da :: 1/128 alırsınız, bu yüzden IPv6 için biraz daha eklemenin bir yolu var mı?
William

2
jcomeau@aspire:~/rentacoder/jcomeau/kybyz$ sudo ip route add local ::/104 dev lo 
jcomeau@aspire:~/rentacoder/jcomeau/kybyz$ ping6 ::2
PING ::2(::2) 56 data bytes
64 bytes from ::2: icmp_seq=1 ttl=64 time=0.083 ms
64 bytes from ::2: icmp_seq=2 ttl=64 time=0.128 ms
^C
--- ::2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 999ms
rtt min/avg/max/mdev = 0.083/0.105/0.128/0.024 ms
jcomeau@aspire:~/rentacoder/jcomeau/kybyz$ ping6 ::3
PING ::3(::3) 56 data bytes
64 bytes from ::3: icmp_seq=1 ttl=64 time=0.148 ms
64 bytes from ::3: icmp_seq=2 ttl=64 time=0.141 ms
64 bytes from ::3: icmp_seq=3 ttl=64 time=0.142 ms

dan Can I bağlamak bir arayüze adresleri (büyük) bloğun?

benim için işe yarayan tek şey bu. linux'a özgü, elbette.

bene nota : Bu gelecekte bir zamanda 0.0.0.0/8 adresleri çakışabilir, çünkü ::127.0.0.0/104muhtemelen daha iyi bir seçim olacaktır.


Bu, yönlendirme tablosunu, Ben Jencks tarafından tarif edildiği gibi ipv4 uyumluluğu için ayrılan aralığa etkili bir şekilde genişletiyor.
korkman

bu beni hiç ilgilendirmiyor. test amaçlıdır; benim yerel makinemde; kendimden başka kimseyi etkilemez.
jcomeau_ictx

1
@jcomeau_ictx Sizi ilgilendiriyor olsun ya da olmasın, cevabınızı kullanacak herkesi ilgilendirebilir, çünkü daha sonra onları etkileyecektir .
mtraceur

0/8 ipv4 aralığı atanana kadar olmayabilir. Her neyse, cevabımı çözeceğim.
jcomeau_ictx

/ 96 kullansaydım kötü olurdu, ama / 104 kullanıyordum. Her neyse, geri dönüş aralığı :: 127.0.0.0/104 kullanmak için cevabı düzenledim.
jcomeau_ictx

2

Bunun için RFC 4193 adreslerini kullanmanızı tavsiye ederim . RFC 4193, bayt değerini ve fdardından 5 rastgele bayt alarak yerel kullanım için kendi / 48 kodunuzu oluşturmanızı sağlar . İlk 48 bitten sonra uygun gördüğünüz her şeyi koymanıza izin verilir, bu nedenle / 64 istiyorsanız, fdLinux sistemleri için bu örnekte olduğu gibi 7 rasgele bayt alabilirsiniz :

ip -6 route add to local fd66:29e9:f422:8dfe::/64 dev lo

RFC 4193'ü kullanmak, önceki RFC'leri ihlal etmediğinizden önceki yanıtlara kıyasla avantajlıdır ve adresler bir arabirim tanımlayıcısı olmadan kullanılabilir.

Önceki yanıtlarda belirtilen aralıkların her biri, farklı amaçlar için ayrılmış aralıklar ya da her kullanıldığında bir arabirim tanımlayıcısı gerektiren bağlantı yerel adresleri kullanır.

İstediğiniz gibi geri döngü adresleri için aralığın tahsis edildiğini gösteren süresi dolmuş bir taslak var 1::/32. Ancak taslak yıllar önce sona erdiğinden ve böyle bir tahsisat yapılmadığından bunun için kullanamazsınız 1::/32.


Şimdi RFC 4193 uyumlu önekler oluşturmak için küçük bir komut satırı aracı yazdım
kasperd

0

Yerel bağlantı adresleme kullanmak tek geçerli seçenek gibi görünüyor. Buradaki en fazla öneri görmezden gelinen şey, IPv6 önekinin kapsamı beyan etmesidir ve muhtemelen özel adreslememin küresel kapsamda olmasını istemem.

Linux için:

$ sudo ip -6 address add fe80::1/64 dev lo
$ sudo ip -6 address add fe80::2/64 dev lo
$ sudo ip -6 address add fe80::3/64 dev lo

Ve bu adreslere başvururken arayüzü belirtin. Netcat ile test:

$ nc -l -p 10001 fe80::1%lo
$ nc fe80::1%lo 10001

Doğru kapsamın doğrulanması:

$ ip -6 a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 
    inet6 fe80::1/64 scope link 
       valid_lft forever preferred_lft forever

Yine de bağlanabilmek için her bir IP'yi eklemek çok zarif görünmüyor. 127.0.0.0/8 ile, herhangi bir adrese önceden atamadan bağlanabilirsiniz.


Hayır, ULA, site yerel adreslemesi yapmanın geçerli bir yoludur. Internet'te varsayılan olarak yönlendirilmez. Ancak yerel olarak yönlendirebilirsiniz. Bir sitedeki her alt ağ, ISP'den bağımsız olarak, genel olarak benzersiz benzersiz bir özel önek içerebilir .
John Mahowald

Ve yerel site yerel değil. Bu benim açımdan :-)
korkman

0

Yerel ana1::/32 bilgisayar ağı olarak kullanılması önerilen IPv6 için A Daha Büyük Geri Döngü Öneki adı verilen bir RFC proporsal vardır . Ancak, teklif 2013 yılında onaylanmadı ve süresi doldu.


Bu, geçen yıl bu soruyla ilgili yazdığım cevapta zaten belirtilmişti.
19'da kasperd

@kaspered Oh evet haklısın, üzgünüm fark etmedi çünkü cevap aslında iki cevap içeriyor ve diğeriyle başlıyor.
F.Raab

Süresi dolan taslağın bir cevap olduğunu düşünmedim çünkü asla standart olmadı. Cevabımın altında bunu belirttim çünkü ilgili arka plan bilgileri ve belirli bir amaç için bir aralıkta standartlaştırma girişimi hakkında bir bağlam sağlıyor.
kasperd
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.