IPv6 루프백 주소 (127.xxx에 해당)


16

여러 웹 사이트에 대해 별도의 루프백 주소가있는 개발 환경이 있습니다.

예를 들어 다음과 같은 것이 있습니다.

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에 해당하는 솔루션을 원합니다.

이미 :: 1을 루프백 주소로 사용할 수 있지만 :: 2, :: 3 등은 작동하지 않는 것 같습니다.

IPv6에 다른 ​​루프백 주소가 있습니까? 고유 한 루프백 주소를 여러 개 가질 수있는 방법이 있습니까?


1
:: ffff : 7f00 : 1, :: ffff : 7f00 : 2 등을 추천하지만, 누군가 썩은 과일을 나에게 던질 것입니다.
womble

IPv6 인터페이스 로컬 멀티 캐스트 범위에서 무언가를 시도 할 수 있습니다. 그것은 당신의 호스트로 되돌아 갈 것이고, 그것은 거대한 범위입니다. 그것이 당신을 위해 작동하는지 여부는 당신이하려는 일에 달려 있습니다.
Ron Maupin 2016 년

답변:


13

기술적으로 :: 2, :: 3 등은 "ipv4 호환 ipv6 주소"범위 인 :: 0.0.0.0/96의 일부입니다. 더 이상 사용되지 않지만 해당 범위를 사용하고 싶지 않을 수 있습니다.

랩 환경의 경우 고유 한 로컬 주소 지정을 사용하십시오. https://www.ultratools.com/tools/rangeGenerator로 이동하여 접두사를 생성하십시오. 그런 다음 해당 접두사에서 원하는 주소를 선택하여 루프백 인터페이스에 할당 할 수 있습니다.


왜 :: 127.0.0.0/96입니까?
Todd

9

루프백 주소는 :: 1/128입니다. 서브넷의 너비는 하나의 호스트로만 제한됩니다. 서브넷 마스크를 더 넓은 것으로 변경하고 라우팅 테이블을 확인하십시오. 또는 링크 로컬 주소를 사용하십시오.


1
이 대답은 Windows 또는 Linux 중 하나 또는 둘 다에 추가 IPv6 주소를 루프백 인터페이스에 바인딩하는 방법을 추가하는 것이 좋습니다. IPv4에서는 127.0.0.1/8을 얻었고 IPv6에서는 :: 1/128을 얻었으므로 IPv6에 더 많은 것을 추가 할 수있는 방법이 있습니까?
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

from (큰) 주소 블록을 인터페이스에 바인딩 할 수 있습니까?

그것은 나를 위해 일한 유일한 것입니다. 물론 리눅스에 따라 다릅니다.

참고 : 미래에 언젠가 0.0.0.0/8 주소와 충돌 할 수 있기 때문에 ::127.0.0.0/104더 나은 선택 일 것입니다.


이는 Ben Jencks가 설명한대로 라우팅 테이블을 ipv4 호환성을 위해 예약 된 범위로 효과적으로 확대합니다.
korkman

그것은 전혀 상관 없습니다. 테스트 목적입니다. 내 로컬 컴퓨터에 있습니다. 그것은 나 자신에게만 영향을 미치지 않습니다.
jcomeau_ictx

1
@jcomeau_ictx 관심이 있든 없든 귀하의 답변을 사용할 사람이 관심을 가질 수 있습니다 .
mtraceur

ipv4 범위 0/8이 할당 될 때까지는 그렇지 않을 수도 있습니다. 어쨌든, 나는 대답을 고칠 것이다.
jcomeau_ictx

/ 96을 사용하면 좋지 않았지만 / 104를 사용했습니다. 어쨌든, 루프백 범위 :: 127.0.0.0/104를 사용하도록 답변을 편집했습니다.
jcomeau_ictx

2

이를 위해 RFC 4193 주소를 사용하는 것이 좋습니다 . RFC 4193을 사용하면 바이트 값 fd과 5 개의 임의 바이트를 가져와 로컬에서 사용할 고유 한 / 48을 구성 할 수 있습니다 . 처음 48 비트 뒤에는 적절한 것을 넣을 수 있으므로 / 64를 원하면 fdLinux 시스템의이 예와 같이 7 바이트의 임의 바이트 를 사용할 수 있습니다 .

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

RFC 4193을 사용하면 RFC를 위반하지 않는 이전 답변과 비교할 때 이점이 있으며 인터페이스 식별자없이 주소를 사용할 수 있습니다.

이전 답변에서 언급 한 각 범위는 다른 목적으로 예약 된 범위를 사용하거나 사용할 때마다 인터페이스 식별자가 필요한 링크 로컬 주소를 사용합니다.

원하는 초안1::/32 이 추가 루프백 주소에 할당 되도록 제안 된 초안 이 있습니다 . 그러나 그 초안이 몇 년 전에 만료되어 그러한 할당 이 이루어진 적이 없으므로이를 사용할 수 없습니다 1::/32.


RFC 4193 호환 접두사를 생성하는 작은 명령 줄 도구를 작성했습니다. v6tools.kasperd.dk/rfc4193
kasperd

0

링크 로컬 주소 지정을 사용하는 것이 유일하게 유효한 옵션 인 것 같습니다. 여기에서 대부분의 제안이 무시하는 것은 IPv6 접두사가 scope을 선언 한다는 사실이며, 아마도 개인 주소 지정이 전역 범위에 포함되기를 원하지 않습니다.

Linux의 경우 :

$ 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

이러한 주소를 참조 할 때 인터페이스를 지정하십시오. netcat으로 테스트 :

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

올바른 범위 확인 :

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

여전히 IP를 바인딩 할 수 있도록 모든 단일 IP를 추가해야하는 것은 그리 우아하지 않은 것 같습니다. 127.0.0.0/8을 사용하면 사전에 할당하지 않고도 모든 주소에 바인딩 할 수 있습니다.


아니요, ULA는 사이트 로컬 주소 지정을 수행하는 올바른 방법입니다. 인터넷에서는 기본적으로 라우팅되지 않습니다. 그러나 로컬로 라우팅 할 수 있습니다. 사이트의 모든 서브넷 은 ISP와 관계 없이 합리적으로 전역 적으로 고유 한 개인 접두사를 가질 수 있습니다 .
John Mahowald

그리고 local 사이트는 호스트 로컬이 아닙니다. 그건 내 요점이야 :-)
korkman

0

RFC의 proporsal 라는 IPv6에 대한 더 큰 루프백 접두사 사용하는 제안, 1::/32로컬 호스트 네트워크로는. 그러나이 제안은 2013 년에 이미 승인 및 만료되지 않았습니다.


이것은 작년 에이 질문에 쓴 답변에서 이미 언급되었습니다.
kasperd

@kaspered 아 맞아, 대답은 사실 두 가지 대답을 포함하고 다른 하나부터 시작하기 때문에 눈치 채지 못했습니다.
F.Raab

나는 만료 된 초안이 표준이 아니기 때문에 대답으로 생각하지 않았습니다. 나는 관련 배경 정보이기 때문에 내 대답 아래에 언급했으며 특정 목적을 위해 범위를 표준화하려는 시도에 대한 컨텍스트를 제공합니다.
kasperd 2009 년
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.