Devuan Chimaera Linux에서 다음을 구성합니다.
/etc/네트워크/인터페이스
auto wlan0
iface wlan0 inet dhcp
pre-up /sbin/wpa_supplicant -B -Dwext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf
post-down /usr/bin/killall -q wpa_supplicant
/etc/wpa_supplicant/wpa_supplicant.conf
network={
ssid="MySSID"
psk="redacted"
}
ctrl_interface=/run/wpa_supplicant
update_config=1
dhclient는 인터페이스가 처음 나타날 때만 실행됩니다.
를 사용하면 ifconfig wlan0 down
종료 시 IP 주소가 유지되고 ifconfig wlan0 up
dhclient를 실행하지 않고도 인터페이스가 복원됩니다.
불행하게도 dhclient가 제공하는 기본 경로를 기반으로 계산된 사용자 지정 경로를 추가하는 사용자 지정 /etc/dhcp/dhclient-exit-hooks.d/wlan0-routes가 있습니다.
wlan0을 끄면 예상대로 사용자 지정 경로가 손실됩니다.
wlan0을 시작하면 dhclient가 실행되지 않으므로 사용자 지정 경로가 다시 추가되지 않습니다.
고쳐 쓰다:
ifconfig wlan0 down
(이 문제 발생) 의 동작에 차이가 있는 것 같습니다 ifdown wlan0
.
root@demo:~# ifconfig wlan0 down
root@demo:~# ip addr show wlan0
9: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 00:0e:8e:4c:f6:a3 brd ff:ff:ff:ff:ff:ff
inet 192.168.98.196/24 brd 192.168.98.255 scope global dynamic wlan0
valid_lft 7130sec preferred_lft 7130sec
root@demo5:~# ifconfig wlan0 up
...
root@demo5:~# ifdown wlan0
root@demo5:~# ip addr show wlan0
9: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
link/ether 00:0e:8e:4c:f6:a3 brd ff:ff:ff:ff:ff:ff
ifdown wlan0
호출하는 대신 사용하면 ifconfig wlan0 down
dhclient
인터페이스를 열 때 모든 것이 예상대로 작동합니다.
ifconfig wlan0 down
이들그리고 그리고 의 차이점은 무엇인가요 ifdown wlan0
?
답변1
그 사람의 말을 인용하자면:
ifup 및 ifdown 명령은 각각 /etc/sysconfig/network 및 /etc/sysconfig/network-scripts/ifcfg-<configuration> 파일의 인터페이스 정의를 기반으로 네트워크 인터페이스를 구성(또는 구성 해제)하는 데 사용할 수 있습니다.
하지만
ifconfig는 커널 상주 네트워크 인터페이스를 구성하는 데 사용됩니다. 필요에 따라 인터페이스를 설정하기 위해 시작 시 사용됩니다. 그 이후에는 일반적으로 디버깅할 때나 시스템 조정이 필요할 때만 필요합니다.
ifconfig는 net-tools(네트워크 유틸리티)의 일부입니다.https://net-tools.sourceforge.io/
나는 이것이 iproute2로 대체된 오래되고 더 이상 사용되지 않는 도구라고 생각합니다.https://wiki.linuxfoundation.org/networking/iproute2
답변2
~에서https://access.redhat.com/solutions/27166
"ifconfig up eth0"과 "ifup eth0"의 차이점은 무엇입니까?
해결하다:
"ifconfig" 명령과 "ifup" 또는 "ifdown" 명령은 네트워크 인터페이스를 활성화합니다. "ifconfig"는 네트워크 인터페이스를 직접 제어하지만 "ifup" 또는 "ifdown"은 "/etc/sysconfig/network-scripts/ifup-" 또는 "ifdown-" 스크립트를 실행합니다. 이 스크립트는 ip 명령을 사용합니다.
"ifconfig" 및 "ip" 명령은 ioctl()을 사용하여 네트워크 인터페이스를 활성화하거나 비활성화합니다. 'ifconfig'에는 네트워크 인터페이스 'IFF_UP | RUNNING' 태그가 지정되었지만 'ip'에는 'IFF_UP' 태그가 지정되었습니다.
"ifconfig up eth0"은 eth0을 활성화하지만 IP 주소를 설정하지는 않지만 "ifup"은 "ifup-eth*" 스크립트를 사용하기 때문에 "ifup eth0"은 ifcfg-eth0을 기반으로 IP 주소 또는 기타 옵션을 설정합니다.
ifup 명령은 네트워크 스크립트 디렉터리에 구성된 정적 경로도 구성합니다. ifconfig 명령은 그렇지 않습니다.