ifmetric
예를 들어 ifmetric enp0s3 1
.
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.1.1 0.0.0.0 UG 1 0 0 enp0s3
0.0.0.0 192.168.237.1 0.0.0.0 UG 100 0 0 enp0s8
그러나 재부팅하면 enp0s3의 메트릭이 101로 돌아갑니다. 이 변경 사항을 영구적으로 적용하거나 시작 시 자동으로 설정하려면 어떻게 해야 합니까?
답변1
NetworkManager를 사용하는 경우 기본 경로 메트릭을 변경하는 올바른 방법은 다음과 같이 인터페이스 enp0s3과 연결된 연결을 수정하는 것입니다.
nmcli connection modify <connection-name> ipv4.route-metric 1
그런 다음 연결을 다시 활성화하십시오.
nmcli connection up <connection-name>
<connection-name>
의 출력에서 값을 찾을 수 있습니다 nmcli connection
.
답변2
데비안과 그 파생물에서 올바른 방법은 파일을 다음 위치에 쓰는 것입니다./etc/NetworkManager/dispatcher.d(무엇이라고 부르든) 다음과 같이 읽습니다.
#!/bin/sh
# Change the metric of the default route only on interface enp0s3
IF=$1
STATUS=$2
MY_METRIC=1
if [ "$IF" = "enp0s3" ]
then
case "$STATUS" in
up)
ip route del default dev $IF
ip route add default via $DHCP4_ROUTERS dev $IF metric $MY_METRIC
;;
*)
;;
esac
fi
이렇게 하면 업데이트할 때마다 사용자 정의 설정을 덮어쓰지 않습니다. 이를 확인하려면 네트워크 관리자를 중지하고 killdh클라이언트 그리고인터페이스의 IP 주소를 새로 고칩니다.그 다음에네트워크 관리자를 다시 시작하십시오.
문서를 찾을 수 있습니다여기.
편집하다:
FvD 요구 사항에 따르면:
systemctl stop network-manager
pkill dhclient
ip addr flush dev eth0
systemctl start network-manager
문제의 인터페이스가 다음과 같은 경우이더넷 0, 그렇지 않으면 해당 변경을 수행합니다.
답변3
우분투의 경우
ip route replace default via 192.168.1.1 metric 1
나에게는 입력한 이후 더 이상 단계가 필요하지 않았으며 지금까지 기준 1로 유지됩니다.
센토스의 경우
올바른 방법은 위 항목을 "/etc/sysconfig/network-scripts/route-eth(x)"그렇다면 ip route replace
추가만 하세요 .default via 192.168.1.1 metric 1
답변4
/etc/dhcpd.conf
이와 같은 인터페이스 측정항목을 설정할 수 있도록 영구적으로 만들 수 있어야 합니다 .
interface enp0s3;
metric 1;