mdns4 호스트 이름 확인 우선순위 변경

mdns4 호스트 이름 확인 우선순위 변경

우리는 이더넷 포트에 LiDAR가 연결된 Raspberry Pi를 사용하고 있습니다. 문제는 mdns4_minimal이 $(hosname).local을 두 개의 IP로 해석한다는 것입니다. 하나의 IP는 이더넷 포트(Lidar에서)에서 가져오고 다른 IP는 WiFi에서 가져옵니다. 이로 인해 ROS에서 일부 노드가 WiFi IP 주소 대신 LiDAR IP 주소를 획득하여 노드 간 통신이 잘못되는 문제가 발생합니다.

해결책은 호스트 이름 확인 우선순위를 변경하여 Wi-Fi 연결의 우선순위를 지정하는 것이라고 생각했지만 인터넷에서 이 작업을 수행하는 방법에 대한 지침을 찾지 못했습니다.

아니면 이 문제를 해결하는 더 좋은 방법이 있습니까?

답변1

먼저, 이름 확인 우선순위를 지정할 수 있습니다(또는 오히려주문하다) 존재하다 /etc/nsswitch.conf.

예를 들어 Raspbian 11(Bulls Eye) Pi에서 관련 부분 /etc/nsswitch.conf은 다음과 같습니다.

hosts:          files mdns4_minimal [NOTFOUND=return] dns

예를 들어, 이것을 mdns4_minimal 앞에 넣으면 dns호스트 이름 확인은 mdns보다 dns를 선호합니다:

hosts:          files dns mdns4_minimal [NOTFOUND=return]

바라보다맨페이지솔루션 순서를 자세히 설명하는 훌륭한 게시물도 있습니다.여기.

귀하의 의견을 읽은 후 mDNS 해상도를 유지하고 싶다는 점을 이해하지만 어떤 해상도를 지정해야 하는지상호 작용모두가 이 과정에 참여했습니다.

deny-interfaces의 목록에 인터페이스를 추가하여 Avahi 데몬(mDNS 담당)에게 인터페이스를 무시하도록 지시할 수 있습니다 /etc/avahi/avahi-daemon.conf. ~에서맨페이지:

deny-interfaces= Set a comma separated list of network interfaces that should be ignored by avahi-daemon. Other not specified interfaces will be used, unless allow-interfaces= is  set.
       This option takes precedence over allow-interfaces=.

그런 다음 재시작 데몬을 사용하십시오 systemctl restart avahi-daemon.

관련 정보