노트북에서는 터널이 동작했으므로 설정 파일이 휴대폰과 태블릿으로 넘어갔고, 이제 세 기기 모두에서 핸드셰이크가 들쭉날쭉합니다. 잘못 입력된 것도 없고 서버 설정을 편집한 것도 아닙니다. WireGuard 프로필은 여러 기기가 쓸 수 있는 비밀번호가 있는 계정이 아닙니다. 키 쌍이며, 피어를 식별하는 것은 공개 키 쪽뿐입니다. 파일을 복사하면 정체성도 복사되므로, 서버는 이제 모두 자기가 같다고 주장하는 여러 기기에 대해 하나의 엔드포인트 관계를 유지하려고 합니다. 서버 쪽에서는 알아챌 두 번째 기기가 없고, 주소가 계속 움직이는 피어 하나만 있을 뿐입니다.

각 기기의 핸드셰이크 로그부터 시작하세요

각 기기에서 클라이언트를 열고 무엇이든 바꾸기 전에 마지막 핸드셰이크 시각과 현재 엔드포인트를 기록하세요. 건강한 구성에서는 기기를 쓰는 동안 그 값이 안정적으로 유지됩니다. 정체성이 중복되면 타임스탬프가 번갈아 나타나고, 서버에 기록된 엔드포인트는 프로필을 가진 기기와 다른 기기를 가리킬 수 있습니다. 그 번갈아 나타남이 바로 서명이며, 증상이 설정 오류가 아니라 불안정한 연결처럼 보이는 이유입니다. 기기가 고장 난 것이 아니라 서로를 방해하고 있는 것입니다.

읽기는 기기 자체에서 하세요. 그래야 각 관찰이 특정 기계에 묶입니다. 지원 채팅에서 복사한 타임스탬프는 그 연결을 잃고 나중에는 거의 쓸모가 없습니다.

두 기기가 하나의 정체성을 공유하는지 확인하세요

공개 키를 비교하고, 개인 키는 절대 비교하지 마세요. 공개 키는 개인 키에서 유도되므로 같은 개인 키를 담은 두 프로필은 같은 공개 키를 만들고 서버에는 구분되지 않습니다. 두 기기가 같은 공개 키를 보고한다면 문제는 이미 정해진 것이며 keepalive 조정은 아무 도움이 되지 않습니다. 불안정한 핸드셰이크를 동반한 서로 다른 두 키는 완전히 다른 곳을 가리키므로, 비교는 어떤 변경보다 먼저 와야 합니다.

wg show wg0 public-key
wg show wg0 latest-handshakes
wg show wg0 endpoints
wg show wg0 transfer

이 명령들은 공개 자료와 카운터만 출력하며, 지원 대화에 필요한 것은 그게 전부입니다. 공개 키 하나와 두 네트워크 사이를 계속 오가는 엔드포인트를 가진 서버 피어 항목은 복제의 예상된 결과입니다. 새 출처에서 인증된 패킷이 트래픽이 어디로 가는지를 갱신하기 때문입니다. 이 동작은 설계대로 작동하는 프로토콜이며, 그래서 네트워크 장애로 오해하기 쉽습니다.

두 번째 정체성을 올바르게 마련하세요

필요한 기기에서 새 키 쌍을 만들고, 그 결과인 공개 키를 자체 허용 주소와 함께 별도 피어로 서버에 추가하세요. 개인 키는 기기에서 만들어져 그곳에 남아야 합니다. 다른 곳에서 만들어 붙여 넣은 키는 적어도 한 곳을 더 거쳤고, 그 여정은 이제 신뢰 이야기의 일부입니다.

umask 077
wg genkey > newdevice.key
wg pubkey < newdevice.key

서버 쪽에는 공개 키와 원래 기기와 충돌하지 않는 허용 주소 할당이 필요합니다. 새 키를 제시하면서 예전 터널 주소를 유지하는 프로필은 서버가 받아들인 뒤 잘못 라우팅할 수 있는 피어를 만듭니다. 이는 거부된 핸드셰이크보다 미묘한 고장입니다. 연결하기 전에 주소 할당을 확인하고, 첫 번째로 당혹스러운 패킷 손실 뒤에 확인하지 마세요.

원본을 깨지 않고 복제본을 물리세요

새 정체성이 동작하면 원본 기기가 여전히 쓰는 서버 항목을 삭제하는 대신, 복사한 프로필을 원본 기기의 주변에서 제거하세요. 복사본이 노출되었을 가능성이 있다면 대신 즉시 폐기하고 다시 발급하세요. 편의는 공유 비밀을 유통시키는 이유가 아닙니다.

구독당 여러 기기를 정말 지원하는 관리형 서비스라면 그렇게 알려 주고 자체 인터페이스에서 별도 자격 증명을 발급합니다. 프로필 하나를 수동으로 복제하는 것은 결코 그 모델이 아니며, 서비스 브랜드가 무제한 기기를 암시하더라도 마찬가지입니다.

두 기기를 따로 그리고 함께 시험하세요

먼저 각 기기를 단독으로 검증하세요: 핸드셰이크, 움직이는 전송 카운터, 그리고 터널만 도달할 수 있는 목적지. 그다음 둘을 동시에 실행하고 서버가 엔드포인트를 어떻게 보는지 관찰하세요. 서로 다른 두 키는 튀는 항목 하나가 아니라 안정적인 피어 항목 둘을 만들어야 합니다.

새 공개 키는 배포 기록과 함께 보관하고 어느 기기가 어느 것을 가졌는지 적어 두세요. 그 목록이 없으면 다음에 프로필을 복사하는 사람이 같은 실패를 되풀이하고, 번갈아 나타나는 핸드셰이크는 다시 네트워크 탓으로 돌아갑니다.

관련 글