LAN에서 호스트 이름.local을 확인할 수 없습니다.

LAN에서 호스트 이름.local을 확인할 수 없습니다.

예전에는 LAN을 통해 컴퓨터 간에 통신할 수 있었지만 더 이상 작동하지 않습니다. 물론 IP를 이용해서 ssh도 가능하지만 DHCP이기 때문에 수시로 바뀔 수도 있습니다. 두 머신 모두 Debian 9.12를 실행하고 있습니다. 하나는 Windows 호스트의 가상 머신이지만 여전히 작동합니다. 구성 파일을 건드리지 않고 정기적으로 업데이트하기만 하면 됩니다.ssh [email protected]

ping hostname.local
ping: hostname.local: Name or service not known

(이것은 제가 프랑스어로 번역한 메시지와 정확히 일치하지 않을 수도 있습니다)

ssh hostname.local
ssh: Could not resolve hostname hostname.local: Name or service not known

(ssh 출력은 영어로 되어있습니다)

avahi.org에서:

Avahi는 mDNS/DNS-SD 프로토콜 제품군을 통해 로컬 네트워크에서 서비스 검색을 용이하게 하는 시스템입니다.

살펴봤지만 /etc/resolv.conf기본적 으로 제공되는 표준 구성입니다 /etc/avahi/avahi-daemon.conf./etc/nsswitch.conf

/etc/resolv.conf( network-manager부팅할 때마다 재설정)

# Generated by NetworkManager
search lan
nameserver xx.xx.xx.xx # DNS IPs obtained from DHCP
nameserver xx.xx.xx.xx 

man resolv.conf목록에는 기본적으로 로컬 도메인 이름만 포함되어 있다는 의미입니다 search(프랑스어 매뉴얼 페이지에서 번역한 것과 유사함). 이것이 local대안이 되어야 하지 않습니까 lan?

이를 변경하고 (네트워크 관리자를 다시 시작하지 않고) LAN의 다른 호스트에 즉시 ping 또는 sshing을 시도했지만 작동하지 않았습니다. 네트워크 관리자 /etc/resolv.conf를 다시 시작하면 search lan.

/etc/nsswitch.conf(기본값, 변경하지 않았습니다)

# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.

passwd:         compat
group:          compat
shadow:         compat
gshadow:        files

hosts:          files mdns4_minimal [NOTFOUND=return] dns myhostname
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

avahi-browseavahi(zeroconf/Bonjour)에 의존하는 호스트와 서비스를 사용하고 검색해 보았지만 nbtscan실행 중인 호스트만 찾는 것 같습니다.

(이것이 아마도 다른 질문과 중복된 것일 수 있다는 것을 알고 있지만 답변을 찾지 못했고 아무것도 할 수 있는 평판이 충분하지 않습니다.)

답변1

그것을 발견!

내 라우터에 DNS 서버가 있는 것 같습니다.

nslookup host_ip router_ip
Server:     192.168.1.254
Address:    192.168.1.254#53

69.1.168.192.in-addr.arpa   name = hostname.lan.

이것은 .localvs .lan질문에 대한 답변입니다.최근 데비안에서는 로컬 도메인이 .lan.

그래도 ping hostname.lan알 수 없는 호스트가 반환됩니다.

감사해요https://askubuntu.com/questions/623940/network-manager-how-to-stop-nm-updating-etc-resolv-conf/etc/resolv.conf, 나는 그것이 심볼릭 링크라는 것을 알았습니다 /var/run/NetworkManager/resolv.conf.내 것으로 교체해 보세요resolv.conf:

search lan
nameserver 192.168.1.254

라우터의 DNS를 사용하도록 합니다(필요한 경우 쿼리를 라우팅합니다).

네트워크 관리자를 다시 시작 systemctl restart network-manager하면 매력적으로 작동합니다.

$ ping hostname.lan
PING hostname.lan (192.168.1.69) 56(84) bytes of data.
64 bytes from hostname.lan (192.168.1.69): icmp_seq=1 ttl=64 time=2.02 ms

( ping google.frWAN 쿼리가 처리되도록 하기 위해)

답변2

내 경우에는 .local 접두사를 통해 네트워크의 특정 호스트에 액세스할 수 없는 이유는 단순히 해당 호스트의 avahi 데몬 서비스가 중지되었기 때문입니다.

[~][0]$ service avahi-daemon status
○ avahi-daemon.service - Avahi mDNS/DNS-SD Stack
     Loaded: loaded (/lib/systemd/system/avahi-daemon.service; disabled; preset: enabled)
     Active: inactive (dead)
TriggeredBy: ○ avahi-daemon.socket
[~][3]$ service avahi-daemon start
[~][0]$ 
█[~][0]$ ping asus.local
PING asus.local (192.168.1.204) 56(84) bytes of data.
64 bytes from 192.168.1.204 (192.168.1.204): icmp_seq=1 ttl=64 time=0.892 ms
64 bytes from 192.168.1.204 (192.168.1.204): icmp_seq=2 ttl=64 time=0.848 ms
64 bytes from 192.168.1.204 (192.168.1.204): icmp_seq=3 ttl=64 time=0.784 ms
^C

답변3

FQDN은 필요하지 않으며 호스트 부분만 사용하면 됩니다. 예를 들어:

`[root@darouter ~]# arping -I enp2s0f1 matilda
ARPING 192.168.100.12 from 192.168.100.254 enp2s0f1
Unicast reply from 192.168.100.12 [D0:67:E5:EB:37:25]  0.759ms
Unicast reply from 192.168.100.12 [D0:67:E5:EB:37:25]  0.801ms
Unicast reply from 192.168.100.12 [D0:67:E5:EB:37:25]  0.732ms
Sent 3 probes (1 broadcast(s))
Received 3 response(s)`

matilda는 Windoz 상자이기 때문에 아르페지오를 사용했습니다. 이는 들어오는 핑을 허용하는 방법을 알아내는 것보다 쉬웠습니다. 라우터에서 DNS를 비활성화하겠습니다. 거기~해야 한다내부 DNS를 사용할 수 있도록 DNS 서버 IP를 입력하는 곳입니다. 내부 DNS가 호스트 이름으로 확인되지 않는 경우 DNS 구성이 손상된 위치를 찾아야 합니다. 나도 얼마 전에 이 문제에 직면했다. 불행하게도 그것은 얼마 전의 일입니다. 어제 무엇을 했는지 기억이 나지 않기 때문에 문제를 해결하기 위해 무엇을 했는지에 대해 확실한 답변을 드릴 수 없습니다.

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

토드

관련 정보