Linux가 할 수 없는데 왜 Windows 시스템이 로컬 이름을 확인할 수 있습니까? 있습니다. 네트워크의 Windows

Windows 및 Linux 시스템이 D-Link DIR-825 라우터에 연결된 소규모 네트워크가 있습니다.

네트워크의 Windows 시스템은 이름으로 다른 모든 시스템에 도달 할 수 있지만 Linux 시스템은 IP 주소로 다른 시스템에 도달 할 수 있습니다.

라우터 웹 관리 인터페이스의 DHCP 클라이언트 상태 목록에서 이름과 DHCP 할당 주소가 나열된 모든 시스템을 볼 수 있습니다.

Windows가 Linux 시스템을 찾는 데 아무런 문제가 없는데 Linux 시스템이 이름으로 다른 시스템을 찾을 수없는 이유는 무엇입니까?



답변

저는 네트워크 전문가가 아니며이 주제에 대한 답을 찾기 위해 LOT을 연구하고 있습니다. 나의 현재 발견은 :

  • Windows는 NetBIOS 이름을 사용하며 이러한 프로토콜은 브로드 캐스트 이름이므로 중앙 서버없이 서로를 찾을 수 있습니다.

  • 최신 배포판의 Linux 시스템은 기본적으로 서버 독립적 인 브로드 캐스트 프로토콜 인 Avahi 라는 프로토콜을 사용 합니다. 로컬 네트워크 컴퓨터는 접미사가 .local, 당신이 사용하는 리눅스에서 리눅스로 ping을 할 수 있습니다ping hostname.local , 또는 그들을 볼 avahi-discover패키지로 제공된다. Gnome의 일부 앱은 avahi를 사용하여 네트워크의 시스템을 나열합니다 (예 : 원격 데스크톱 뷰어)

  • Linux 컴퓨터에 SAMBA를 설치하면 NetBIOS 이름이 지정되고 (보다 기술적으로는 Linux 컴퓨터가 기본적으로 호스트 이름 인 NetBIOS 이름을 사용하여 브로드 캐스트 요청에 자신을 알리게되며) Windows 컴퓨터에서 Linux를 찾을 수 있습니다. 그들 .

  • Gotcha : Samba가있는 Linux 시스템은 NetBIOS 프로토콜 요청에 응답하지만 Ubuntu와 같은 배포판의 기본 설정을 사용하면 이름을 확인하는 방법으로 NetBIOS를 사용하지 않으므로 Linux 시스템은 서로 또는 Windows를 “볼”수 없습니다 기계 . 이를 위해 /etc/nsswitch.conf파일 을 편집 wins하고 다음 줄의 목록에 추가 해야합니다.

    hosts: files mdns4_minimal [NOTFOUND=return] dns wins mdns4

  • 당신은 할 수 있습니다 설치해야합니다 winbind(자동으로 설치하지 않을 경우,과 libnss-winbind) 작업을 위위한 패키지.

  • 따라서 가시성 문제의 경우 모든 Linux 시스템에 Samba를 설치하거나 NetBIOS 이름 확인을 활성화하기 위해 /etc/nsswitch.conf를 편집하거나 Windows 시스템에 Avahi 지원을 설치하십시오.

  • 파일 공유와 관련하여 Samba는 Windows와 Linux 시스템의 파일 공유 기능을 제공합니다. 노틸러스의 “네트워크”섹션에서 Linux 시스템에 대해 /etc/nsswitch.conf를 편집하여 서로 공유 폴더를 볼 필요가 없으며 그 반대의 경우도 마찬가지입니다.

이것이 도움이 되었기를 바랍니다! :디


답변

기본적으로 DNS 서버가없는 Windows는 NetBIOS (Microsoft 이름 확인 프로토콜)를 사용하여 네트워크에 로컬 인 다른 Windows 시스템의 이름을 검색 할 수 있습니다. 이 답변에서 언급했듯이 Linux 측에서 SAMBA (또는 적어도 winbind)를 설정해야합니다. 기본 지침 은 다음과 같습니다 .

Linux 컴퓨터에서 Windows netbios 이름 확인을 활성화하려면 Samba가 설치되어 있는지 확인하십시오 (smb 서비스를 실행할 필요는 없지만). Samba 제품군에는 winbind가 포함되어있어 Windows 호스트 이름을 확인할 수 있습니다. 그런 다음 /etc/nsswitch.conf를 편집하고 다음 줄을 변경하십시오.

hosts: files dns

이에:

hosts: files dns wins

그런 다음 LAN에서 Windows 시스템의 컴퓨터 이름을 ping하여 테스트하십시오.

$ ping windowsbox

BTW, 이것은 WINS와 직접 관련이 없습니다. WINS는 일반적으로 대규모 네트워크에서 브로드 캐스트 트래픽을 줄이고 레거시 중앙 집중식 이름 확인 플랫폼을 제공하며 궁극적으로 다른 네트워크의 시스템이 서로의 NetBIOS 이름 -IP 매핑을 알 수 있도록하는 NetBIOS 서버입니다.

SAMBA의 대안은 DNS 서버를 설정하고 동적 DNS 업데이트를 구성하거나 DHCP가 DNS 레코드를 등록 할 수 있도록하는 것입니다.


답변

아마도 LLMNR 일 것입니다 .


답변

아마도 Avahi / mDNS Resolution을 설정해야합니다. Windows의 LLMNR과 동일합니다.


답변

필요한 소프트웨어가 기본적으로 설치되어 있지 않지만 Linux는 로컬 이름을 확인할 수 있습니다 …

대부분의 Linux 배포판은 커널 이외의 소프트웨어 요구 사항에 대한 추정을 거의하지 않습니다 … Debian reference DNSMasq

apt-cache 검색 dnsmasq …


답변