IPV6에서 마지막 2개의 상자에 3개의 문자만 있으면 어떻게 되나요?

IPV6에서 마지막 2개의 상자에 3개의 문자만 있으면 어떻게 되나요?

실제로 IPV4 및 IPV6 DNS 서버를 변경할 수 있는 새 라우터를 설정하고 있습니다. 나는 추가하고있다애드 가드 DNS두 가지 모두 IPV4 설정은 과거에 필요할 때 몇 번 해봤기 때문에 전혀 문제가 되지 않았습니다. 그러나 IPV6에 추가하기 시작했을 때 마지막 두 상자에는 다른 모든 상자와 마찬가지로 4자가 아닌 3자만 포함되어 있는 것을 발견했습니다. 즉, AdGuard의 IPV6 DNS 서버는 다음과 같습니다:

2a00:5a60::ad1:0ff
2a00:5a60::ad2:0ff

이제 새 주소 번호가 추가될 때까지 가능한 한 많은 상자에 대해 "::"이 "0000"과 동일하다는 것을 알고 있습니다. 따라서 숫자가 있는 상자 2개가 있습니다 2a00. 5a60하나는 기본 서버용이고 다른 하나는 보조 서버용입니다. 다음은 4개의 상자입니다 0000. 하지만 다음 부분은 잘 이해가 되지 않습니다. 마지막 두 상자에는 ad1:0ff및 가 포함되어 있습니다 ad2/0ff.

IPV6 번호를 입력할 때 3자리 숫자만 있는 상자 앞에 "0"을 추가해야 합니까? 그대로 두고 4자리가 아닌 3자리만 유지해야 합니까? 현재는 라우터에 ISP의 IPV6을 사용하라고 지시하고 있지만 AdGuard로 전환하고 싶습니다. AdGuard가 여러 가지 다른 문제를 차단하기 때문입니다.

당신이 제공할 수 있는 어떤 도움이라도 좋을 것입니다! 감사합니다!

답변1

~에 따르면RFC 4291 섹션 2.2다음과 같이 0이 포함된 주소를 단축할 수 있습니다.

  • 0으로 구성된 전체 문자열은 제거할 수 있으며 한 번만 수행할 수 있습니다.

      1234:5678:0000:0000:0000:0000:0000:abcd  
      1234:5678::abcd 
    
  • 4개의 0을 제거하고 1개의 0만 남길 수 있습니다.

      1234:0000:5678:0000:abcd:0000:ef00:0000  
      1234:0:5678:0:abcd:0:ef00:0  
    
  • 앞에 오는 0은 제거할 수 있습니다.

      1234:000a:000b:000c:000d:000e:000f:0000  
      1234:a:b:c:d:e:f:0  
    

RFC의 주요 인용문:

각 필드에 앞에 0을 쓸 필요는 없지만 각 필드에는 숫자가 하나 이상 있어야 합니다.

따라서 기술적으로 각 필드에 16진수 숫자가 1개 이상 있는 한 앞에 오는 0을 생략할 수 있습니다. 단, 전체 필드에 대한 0은 예외입니다(약어 로 사용 가능 ::). 따라서 AdGuard는 0 하나 또는 두 개의 0을 생략할 수 있습니다. 둘 다 유효한 약어입니다. 사용자 JdeBP가 지적했듯이 AdGuard는도메인 해커"'leet'를 표시하고 해당 DNS 서버 IPv6 주소를 해당 doco의 마지막 두 단어로 'ad off' 및 'bad off'로 읽도록 합니다."

따라서 귀하의 경우 전체 주소는 다음과 같습니다.

2a00:5a60:0000:0000:0000:0000:0ad1:00ff
2a00:5a60:0000:0000:0000:0000:0ad2:00ff

다음과 같이 단축할 수 있습니다.

2a00:5a60::ad1:ff
2a00:5a60::ad2:ff

그러나 앞서 언급했듯이 그들은 "광고 끄기"를 표시하기를 원합니다.

관련 정보