요약

  • IPv6는 자동 구성된 주소를 일반 사용 상태에서 곧바로 제거 단계로 옮기지 않습니다. 선호 수명(preferred lifetime)이 만료되면 주소는 '지원 중단(deprecated)' 상태가 되며, 두 번째 수명이 만료될 때까지 유효 상태를 유지합니다.
  • 이 간격은 새 주소가 새로운 통신을 유치하는 동안 기존 교환에는 끊기면 복구할 수 없는 통신 종단점을 유지할 시간을 줍니다.
  • 2시간 제한은 인증되지 않은 시도가 유효 수명을 단축하는 것을 제한합니다. 재부팅된 라우터가 이전 프리픽스를 잊어버리면, 같은 신중함이 어떤 장치도 회수 방법을 기억하지 못하는 약속을 호스트가 기다리게 만들 수 있습니다.

첫 번째 끝은 존재가 아니라 선택을 바꿨다

이 구분은 일찍 등장했습니다. 1996년에 발표된RFC 1971은 선호(preferred), 지원 중단(deprecated), 유효(valid), 무효(invalid) 주소 상태를 기술했습니다. 선호 상태인 동안 주소는 은퇴에 따르는 특별한 억제 없이 상위 계층 프로토콜에 사용 가능합니다. 선호 수명이 만료되면 주소는 지원 중단 상태가 됩니다. 사용이 억제될 뿐 금지되지는 않습니다. 유효 수명의 만료만이 주소를 무효로 만들고 인터페이스와의 연관을 끝냅니다.

중간 상태는 제어 평면이 업두에 넣을 수 없는 성질을 보호합니다. 열린 TCP 연결은 통상 연결 수명 내내 자신의 종단점 주소를 유지합니다. 대체 프리픽스가 나타난 순간 호스트가 이전 주소를 삭제한다면, 리넘버링 사건 이전에 시작된 유용한 세션들이 깨질 것입니다. 따라서 지원 중단된 주소는 패킷을 계속 수신할 수 있고, 전환은 상위 계층 활동에 과도한 부담을 주게 되는 기존 통신의 출발지로 남을 수 있습니다.

지원 중단은 도달 불가능을 가리키는 더 부드러운 표현이 아닙니다. 첫 번째 만료는 이 주소가 다음 작업 배정에서 이겨야 하는지를 묻습니다. 두 번째는 주소가 애초에 여전히 이 호스트의 주소인지를 묻습니다.

라우터는 하나의 옵션에 두 개의 시계를 광고했다

RFC 4861은 라우터 광고(Router Advertisement) 프리픽스 정보 옵션에 선호 수명과 유효 수명을 별개의 32비트 값으로 담습니다. 두 값 모두 전송 시점 기준의 초로 표현되며, 모든 비트가 1이면 무한을 뜻합니다. 선호 수명은 유효 수명을 초과할 수 없으며,RFC 4862는 이 순서를 뒤집는 프리픽스 정보 옵션을 호스트가 무시하도록 규정합니다.

숫자 자체는 독립적인 권한이 아닙니다. 자율(Autonomous) 플래그도 해당 프리픽스가 스테이트리스 주소 자동 구성에 사용될 수 있음을 밝혀야 합니다. 프리픽스, 플래그, 수명은 지시를 범위, 권한, 시간으로 나눕니다. 그 맥락 없이 복사된 수명은 주소를 형성할 권리를 증명하지 못합니다.

라우터 광고는 상태를 주기적으로 새로 고칩니다. 고정 광고 값은 다른 광고가 도착할 때마다 마감 시점을 앞으로 밀 수 있습니다. 감소하는 값은 고정된 회수 시점으로 이어질 수 있습니다. 한 광고에서 옵션이 생략되는 것은 회수가 아닙니다. 옵션은 여러 메시지에 걸쳐 분산될 수 있고 메시지는 유실될 수 있습니다. 호스트는 하나의 패킷에서 하나의 옵션이 애매하게 빠진 것에 근거하지 않고, 수신한 정보와 만료된 타이머에 따라 동작합니다.

축출 없이 기본 선택이 재조정되었다

선호 수명이 0에 도달하면 새 통신은 적절한 선호 주가가 존재하는 한 지원 중단된 출발지를 피해야 합니다.RFC 6724는 그 구분을 기본 출발지 주소 선택의 규칙 3으로 두었습니다. 지원 중단된 주소를 피하라는 것입니다.

'기본(default)'이라는 단어가 중요합니다. 애플리케이션은 여전히 유효한 출발지를 명시적으로 선택할 수 있고, 기존 통신은 그 주소를 유지할 수 있습니다. 지원 중단됐지만 유효한 주소로 도착하는 새 TCP SYN은, 그 연결이 원래 허용될 수 있다면 그 주소를 출발지로 하는 SYN-ACK을 받을 수 있습니다. 기본 출발지 선호가 멈춘다고 목적지 인식이 멈추지는 않습니다.

이 비대칭이 겹침을 유용하게 만듭니다. 하나의 인터페이스는 대체 프리픽스의 주소와 은퇴 중인 프리픽스의 주소를 동시에 들고 있을 수 있습니다. 새 연결은 선호 주소로 흐르고, 기존 연결은 지원 중단된 주소에서 배출됩니다. 인터페이스 목록에서 이전 주소를 발견했다는 것만으로 전환이 실패했다는 증거가 되지 않습니다. 그 상태, 남은 수명, 새 작업에 대한 실제 선택은 서로 다른 증거입니다.

선호 0은 삭제가 아니라 배수를 시작했다

운영자는 이전 프리픽스를 선호 수명 0, 유효 수명은 여전히 양수로 설정해 광고할 수 있습니다. 호스트는 파생된 주소를 즉시 지원 중단하지만 할당은 유지합니다. 이 단계는 새 의존성의 입구를 닫으면서 이미 존재하는 의존성에는 출구를 남깁니다.

RFC 5887은 계획된 리넘버링의 중심에 바로 이 공존을 둡니다. 새 프리픽스를 도입하고, 이전 프리픽스의 선호도를 낮추고, 참조와 세션이 이동하도록 허용한 뒤, 마지막으로 유효성을 종료합니다. 문서는 또한 주소 상태 기계 밖에 얼마나 많은 것이 남아 있는지 기록합니다.

경로, DNS 레코드, 방화벽 규칙, 접근 목록, 인증서, 로그, 애플리케이션 구성은 각각 이전 값을 보존할 수 있습니다. 주소는 자신의 반환 경로가 사라진 뒤에도 로컬에서 유효할 수 있습니다. 지원 중단 표시가 DNS에서 이름을 제거하지는 않습니다. 두 수명은 조정용 기초 요소를 제공할 뿐, 그 주소를 학습한 모든 시스템에 걸쳐 분산된 변경을 확약하지는 않습니다.

겹침은 대체 주소가 실제로 사용 가능하고 이전 경로가 충분히 오래 사용 가능할 때만 성공합니다. 동작하는 경로가 없는 새 선호 주소는 진전이 아닙니다. 공급자가 경로를 끊어버린 유효한 이전 주소는 호스트 화면 위에서만 이어지는 연속성입니다.

강제 은퇴보다 강제 사망에 더 강한 증거가 필요했다

일반적인 라우터 광고는 인증되지 않을 수 있습니다. 위조된 하나의 메시지가 유효 수명을 몇 초로 줄일 수 있다면, 링크 위의 공격자는 대량 삭제 권한을 얻게 됩니다. 그래서 RFC 4862는 짧은 인증되지 않은 수명의 효과를 제한합니다. 기존 잔여 수명이 길 때, 새 값은 일반적으로 2시간보다 이른 만료를 강제할 수 없습니다. 이미 2시간 이하가 남아 있다면, 그보다 짧은 인증되지 않은 값은 유효 수명 계산에서 무시됩니다.

선호 수명은 의도적으로 다르게 다뤄집니다. 유효 수명 단축이 억제되더라도 선호 수명은 수신한 광고에서 그대로 갱신됩니다. 사양은 이 비대칭을 결과의 크기로 설명합니다. 새 통신에 대한 주소의 매력을 떨어뜨리는 것은 주소를 존재하지 않게 만드는 것보다 작은 공격이며, 정당한 관리자는 이전 프리픽스를 신속히 지원 중단할 방법이 필요합니다.

인증된 광고는 다른 분기로 갈 수 있습니다. 이 규칙은 관찰된 라우터 광고가 인증되었다는 증거가 아니며, 2시간은 보편적인 은퇴 간격이 아닙니다. 약한 증거에 근거한 무효화에 대한 호스트 측 피해 한도입니다.

재부팅은 회수할 대상의 이름을 지울 수 있었다

우아한 모델은 변화를 알리는 장치가 여전히 이전 상태를 알고 있다고 가정합니다. 고객 에지 라우터는 재부팅되고, 공급자로부터 다른 위임 프리픽스를 받으며, 재부팅 전에 광고했던 프리픽스를 잃을 수 있습니다. 무엇을 추가할지는 알지만, 수명 0으로 보내야 할 이전 프리픽스 정보 옵션이 무엇인지는 더 이상 모릅니다.

RFC 8978은 이 플래시 리넘버링 실패를 분석합니다. 명시적 회수 없이는 호스트들이 마지막으로 받은 타이머를 기다립니다. 문서는 규모를 보이기 위해 RFC 4861의 기본 프리픽스 정보 값을 사용합니다. 주소는 7일 동안 선호 상태로, 30일 동안 유효 상태로 남을 수 있습니다. 이 값들은 배포된 라우터의 측정치가 아니라 문서화된 기본값입니다. 취소되지 않은 약속이 얼마나 오래 살아남을 수 있는지를 보여줍니다.

이전 프리픽스를 기억하고 두 수명을 모두 0으로 광고하는 라우터조차, 그 메시지가 인증되지 않았다면 2시간 보호에 부딪힙니다. 위조된 무효화에 대한 저항과 실제로 죽은 프리픽스로부터의 신속한 회복은 같은 제어를 정반대 방향으로 당깁니다.

회수는 손실과 재시작을 견뎌야 했다

RFC 9096은 고객 에지 라우터에 더 많은 메모리를 요구합니다. 이 문서는 이전에 광고한 프리픽스를 안정적 저장소에 보존하고, LAN 측 수명을 상류 위임의 잔여 기간에 맞춰 제한하며, 선호 수명과 유효 수명을 모두 0으로 설정한 채 오래된 프리픽스 광고를 계속할 것을 권고합니다.

반복은 의무의 일부입니다. 호스트는 하나의 라우터 광고를 놓칠 수 있습니다. 이전 상태를 아직 유지하는 호스트에 도달하려면, 라우터는 이전에 약속했던 유효 수명과 관련된 기간 동안 회수된 프리픽스를 계속 지명해야 합니다. 신뢰할 수 있는 은퇴는 하나의 패킷이 인터페이스를 떠나는 순간 완성되지 않습니다.

이후의 지침이 구현이나 배포를 증명하지는 않습니다. 이는 초기 설계 아래의 조건을 드러냅니다. 시간으로 한정된 상태를 만들고 갱신할 수 있는 시스템은 그 상태를 끝낼 때가 되었을 때 그 상태를 식별할 수 있을 만큼의 이력을 유지해야 합니다. 추가는 기억하되 회수는 잊는 것은 우아한 타이머를 오래된 상태 보존 메커니즘으로 바꿉니다.