특정 인터페이스의 DHCP IP가 변경될 때 실행될 스크립트를 추가하려고 합니다. 이를 위해 다음 스크립트를 "/etc/dhcp/dhclient.d/dhcp-hook.sh"에 복사했습니다. DHCP 업데이트/바인딩이 발생할 때마다 해당 IP를 통해 경로를 추가할 수 있도록 라우터 IP를 가져와야 합니다. $DHCP4_routers_IP_ADDRESS의 경우 "dhcp4-change" 이벤트에서 라우터 IP 정보를 얻는 방법을 제안해 주실 수 있는 분이 계십니까? uplink1 테이블이 채워진 스크립트는 다음과 같습니다. 라우터 IP를 얻는 방법만 알면 됩니다.
1 #! /bin/sh
2
3 interface=$1 status=$2
4
5 if [ "$status" != "dhcp4-change" -o
6 $interface != $UPLINK1 ]; then
7 return
8 fi
9 if [ $interface = $UPLINK1 ]; then
10 if [ -n $DHCP4_routers_IP_ADDRESS ]; then
11 ip route add default via $DHCP4_routers_IP_ADDRESS table uplink1
12 fi
13 fi
답변1
언제든지 이벤트를 추가 echo "$(env)" > change_env.log
하고 실행하여 환경 변수가 어떻게 보이는지 확인한 다음 필요한 것을 찾을 수 있기를 바랍니다. 다양한 이벤트의 일부 유망한 환경 변수에는 DHCP4_DHCP_SERVER_IDENTIFIER
,,,,가 포함됩니다.IP4_GATEWAY
IP4_NAMESERVERS
DHCP4_DOMAIN_NAME_SERVERS