dhcpcd: 로컬 링크 연결의 우선순위를 설정합니다.

dhcpcd: 로컬 링크 연결의 우선순위를 설정합니다.

한 명 있는 걸 봤어metric핵심 단어dhcpcd.conf(설명된 바와 같이, 예를 들어https://unix.stackexchange.com/a/413036/47009) 이를 통해 특정 인터페이스에 대한 경로 우선순위를 설정할 수 있습니다.

그러나 내 생각에는오직이 인터페이스의 연결에 대한 측정항목을 설정합니다 link-local(동일한 인터페이스의 다른 연결 유형에 대해 다른 측정항목을 사용합니다).

가능합니까? 그렇다면 어떻게 해야 할까요?

배경

네트워크를 구성하고 있습니다(Raspberry Pi에서, 하지만 그게 요점이 아닙니다) dhcpcd.

간단한 설정(단일 연결)으로 DHCP인터페이스 안팎의 연결에 매우 효과적입니다.link-localeth0DHCPwlan0

불행하게도 나의 일반적인 사용 사례에는 사용자가 link-local노트북과 RPi(VNC를 통해 헤드리스 장치 제어) 간의 연결을 통해 연결한 다음 "인터넷 액세스"를 위해 WiFi를 통해 RPi를 일부 네트워크에 연결하는 이중 연결 설정이 포함됩니다. (사용자는 기술에 능숙하지 않기 때문에 연결을 위한 업링크 연결을 제공하는 라우터 역할을 하도록 노트북을 설정할 수 없습니다 link-local.)

이제 내가 직면한 문제는 내가둘 다이더넷 link-local연결과 WiFi DHCP연결, 두 연결 모두 default경로가 정의되어 있으며(자체 문제는 아님) 해당 link-local연결이 WiFi 연결보다 우선합니다. link-local피어가 라우팅을 수행하도록 설정되지 않았 으므로 이는 사실상 장치가 라우팅을 수행하지 않음을 의미합니다.피복재 default경로이므로 "인터넷 액세스"가 없습니다.

$ ip route show

default dev eth0 scope link src 169.254.204.108 metric 202 
default via 192.168.64.1 dev wlan0 proto dhcp metric 303 
169.254.0.0/16 dev eth0 scope link src 169.254.204.108 metric 202 
192.168.64.0/21 dev wlan0 proto kernel scope link src 192.168.69.188 metric 303

( metric낮은 값이 선호됨)

dhcpcd이제 일반적으로 이더넷 연결이 WiFi 연결보다 빠르고 안정적이기 때문에 기본값이 의미가 있는 경우가 많습니다.

DHCP그래서 저는 이더넷 연결을 WiFi 연결보다 더 높은 우선순위로 유지하고 싶지만 link-local이더넷 연결의 우선순위가 가장 낮습니다(가장 높음 metric).

추가 정보

모든 테스트는 다음을 통해 수행됩니다.

$ dhcpcd --version
dhcpcd 8.1.2
Copyright (c) 2006-2019 Roy Marples
Compiled in features: INET ARP ARPing IPv4LL INET6 DHCPv6 AUTH

에서와 같이논평, 링크 로컬 연결에는 라우팅이 전혀 없어야 합니다(나에게는 괜찮습니다).

따라서 이 문제를 추가로 디버깅하기 위해 내가 가진 모든 것을 제공합니다 /etc/dhcpcd.conf.

hostname
clientid
persistent
option rapid_commit
option domain_name_servers, domain_name, domain_search, host_name
option classless_static_routes
option interface_mtu
option ntp_servers
require dhcp_server_identifier
slaac private
allowinterfaces eth0

보시다시피, dhcpcd관리만 가능합니다 eth0(모든 네트워크 연결을 관리한다고 위에서 거짓말을 했습니다. dhcpcd실제로 WiFi 연결은 NetworkManger에 의해 관리됩니다(그리고 unmanaged-devices=interface-name:eth0NetworkManger 구성에 줄이 있습니다).

NetworkManager에 문제가 있는지 확인하기 위해 일시적으로 비활성화하고 다시 시작했습니다.

네트워크 케이블을 연결하면 로그에 다음이 표시됩니다.

Nov 09 17:02:14 mungus dhcpcd[451]: eth0: using IPv4LL address 169.254.204.108
Nov 09 17:02:14 mungus dhcpcd[451]: eth0: adding route to 169.254.0.0/16
Nov 09 17:02:14 mungus dhcpcd[451]: eth0: adding default route
Nov 09 17:02:14 mungus avahi-daemon[532]: Joining mDNS multicast group on interface eth0.IPv4 with address 169.254.204.108.
Nov 09 17:02:14 mungus avahi-daemon[532]: New relevant interface eth0.IPv4 for mDNS.
Nov 09 17:02:14 mungus avahi-daemon[532]: Registering new address record for 169.254.204.108 on eth0.IPv4.

관련 정보