무선 라우터가 호스트 이름 조회를 망쳐놓는 이유는 무엇입니까?

무선 라우터가 호스트 이름 조회를 망쳐놓는 이유는 무엇입니까?

문제: 내 무선 네트워크(도메인 이름 "serenity", 192.168.1.1), 호스트 이름 "jayne"(Arch Linux, 192.168.1.108) 및 "mal"(Mac OS X, 192.168.1.101)에 두 대의 컴퓨터가 있습니다. . 두 사람이 통신하도록 하려고 하면 다음과 같은 일이 발생합니다.

jayne$ ping mal
PING mal.serenity (184.106.31.161) ... [pings go through to weird IP]

그리고

mal$ ping jayne
PING jayne.serenity (184.106.31.161) ...

그러나 라우터에 대한 핑은 작동합니다.

jayne or mal$ ping serenity
PING serenity.serenity (192.168.1.1) ...

그러면 상황이 이상해집니다.

jayne or mal$ ping google
PING google.serenity (184.106.31.161) ... [same IP as before]

jayne or mal$ ping google.com
PING google.com (74.125.115.106) ... [works as expected]

jayne$ ping 192.168.1.101
PING  192.168.1.101 (192.168.1.101) ... [works as expected]

그렇다면 왜 말과 제인은 서로를 볼 수 없는 걸까요?

캐치: Serenity는 현재 192.168.0.1에 있는 인터넷의 기본 게이트웨이인 다른 기존 라우터(도메인 이름 없음)에 연결되어 있습니다. 나는 항상 평온함을 192.168.0.2에 매핑하도록 정적 DHCP 규칙을 설정했습니다.

이제 브라우저에서 존재하지 않는 URL로 이동하면 ISP의 "인터넷에서 * 검색" 페이지로 리디렉션된다는 사실을 확인했습니다. 따라서 핑이 확인하는 이상한 IP 주소는 아마도 어떤 서버에 속했을지 알 수 있습니다. ISP에서 이를 처리하고 .0.1 라우터의 DNS 서버를 다음으로 변경했습니다.Google의 공개 DNS서비스.

이제 "전체" 이름(예: "mal.serenity")을 사용하더라도 전혀 해결하지 않거나("ping: 알 수 없는 호스트 Mal", "ping: jayne: 알 수 없는 호스트를 해결할 수 없음") 해결하지 못하지만 여전히 성공적으로 해결할 수 있습니다 ping mal. .ping jayneping serenity

그렇다면 왜 말과 제인은 서로를 볼 수 없는 걸까요?

저는 실제로 네트워크에 관심이 많은 사람이 아니기 때문에 아마도 어딘가에 설정이 잘못되었을 것입니다. 하지만 그동안 hosts호스트 이름을 IP 주소에 수동으로 매핑하여 이 문제를 해결하기 위해 파일을 사용하고 있지만 그건 단지 수정일 뿐입니다. 문제가 아니라 증상입니다.

답변1

위 의견/질문에 대한 귀하의 답변을 바탕으로 이 내용을 수정하거나 삭제할 수 있습니다.

나는 이것이 계속 진행되고 있다고 믿고 있으며 그것이 당신에게 도움이 될 수 있습니다. 첫 번째 부분은 쉽습니다. DNS를 사용하여 어디에서나 DNS에 등록되지 않은 워크스테이션을 ping하려고 하며 라우터/DNS 서버가 외부 IP 주소를 반환합니다. (저는 믿습니다. 위 질문에 대한 답변이 이를 확인해 줄 것입니다.) .

두 번째 부분은 두 Windows 워크스테이션을 비교할 때 로컬 DNS 서버에 등록하지 않은 경우 TCP/IP를 통한 NetBIOS를 사용하여 서로를 찾는 것입니다. 귀하의 경우에는 제가 Linux나 Mac 전문가가 아니기 때문에 사용할 수 있는 유사한 것이 있는지 확실하지 않으며, 그렇다면 현재 사용되지 않습니다.

제가 말할 수 있는 것은 Linux 박스를 DNS 서버로 작동하도록 설정하고, 자체 DNS를 호스팅하고, 해당 서버에 컴퓨터를 등록할 수 있다는 것입니다. 아니면 HOSTS 파일을 계속 사용할 수도 있습니다. 마지막으로, TCP/IP를 통한 NetBIOS와 유사하게 DNS를 사용하지 않고 Linux와 Mac이 통신하도록 하는 방법을 알려주는 또 다른 답변을 누군가가 추가할 수도 있습니다.

누군가 TCP/IP를 통한 NetBIOS 개념과 유사한 것을 제시하지 못한다면 HOSTS 파일을 사용해도 괜찮을 것이라고 개인적인 의견입니다.

답변2

".serenity" 비트가 DNS 검색 도메인으로 추가되었을 수 있습니다. 이는 DHCP를 통해 자동으로 구성될 수 있으므로 DHCP를 통해 얻을 수 있습니다. 라우터의 DHCP 설정에서 모든 검색 도메인 필드(있는 경우)를 지웁니다.

여전히 표시되면 Windows에서 TCP/IP 설정으로 이동하여 "고급"을 클릭하고 DNS 탭에서 다음을 수행하십시오.

  • "이 연결의 DNS 접미사" 상자를 선택 취소하세요.
  • "이 DNS 접미사 추가"를 선택하고 목록에 아무것도 없는지 확인하세요.

IPv4와 IPv6 모두에 대해 이 작업을 수행해야 할 수도 있습니다.

Mac의 경우 시스템 환경설정에서 네트워크로 이동하세요. 연결의 고급 버튼을 클릭하고 DNS 탭에서 + 버튼을 클릭하여 빈 항목을 추가합니다. (DHCP의 가짜 항목은 회색으로 표시되므로 이 방법으로만 제거할 수 있습니다.)

/etc/resolve.confMac과 Linux 모두에서 검색 도메인이 없는지 확인 해야 할 수도 있습니다 .


알 수 없는 DNS 결과는 DNS 공급자가 사용하는 일종의 "포괄" 또는 "도메인 이름 수정" 서비스인 것 같습니다. 일반적으로 존재하지 않는 모든 도메인에 대해 이 결과를 반환하므로 귀하로부터 광고 수익을 얻을 수 있습니다. OpenDNS와 많은 ISP가 이를 수행합니다.

검색 도메인에 추가된 호스트 이름은 더 이상 유효한 로컬 호스트 이름이 아니지만 OS에 대한 적절한 FQDN처럼 보이므로 후자는 NetBIOS를 참조하는 대신 DNS 서버로 보냅니다. 이 "포괄적" 서비스가 없으면 OS는 결국 이것이 적절한 도메인이 아니라는 것을 깨닫고 NetBIOS 또는 기타 이름 확인 메커니즘으로 대체됩니다.

관련 정보