ifdown과 "ip link set .. .down"의 차이점은 무엇입니까?

ifdown과 "ip link set .. .down"의 차이점은 무엇입니까?

아래에서 몇 가지 테스트를 수행했습니다. ifdown ens32인터페이스가 닫히지 않은 것 같습니다 . 여전히 ip link표시됩니다 UP. ip link set ens32 down인터페이스가 종료될 뿐입니다 . 그렇다면 여기서 문제는 무엇입니까? ifdown이 인터페이스를 종료할 수 없는 이유는 무엇입니까?

root:[~]# cat /etc/*release*
Oracle Linux Server release 7.6
NAME="Oracle Linux Server"
VERSION="7.6"
ID="ol"
VARIANT="Server"
VARIANT_ID="server"
VERSION_ID="7.6"
PRETTY_NAME="Oracle Linux Server 7.6"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:oracle:linux:7:6:server"
HOME_URL="https://linux.oracle.com/"
BUG_REPORT_URL="https://bugzilla.oracle.com/"

ORACLE_BUGZILLA_PRODUCT="Oracle Linux 7"
ORACLE_BUGZILLA_PRODUCT_VERSION=7.6
ORACLE_SUPPORT_PRODUCT="Oracle Linux"
ORACLE_SUPPORT_PRODUCT_VERSION=7.6
Red Hat Enterprise Linux Server release 7.6 (Maipo)
Oracle Linux Server release 7.6
cpe:/o:oracle:linux:7:6:server
root:[~]# 
root:[~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:50:56:31:a8:12 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
root:[~]# ifdown ens32
Device 'ens32' successfully disconnected.
root:[~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 00:50:56:31:a8:12 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
root:[~]# ip link set ens32 down
root:[~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: ens32: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:50:56:31:a8:12 brd ff:ff:ff:ff:ff:ff
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT group default qlen 1000
    link/ether 52:54:00:33:cf:a3 brd ff:ff:ff:ff:ff:ff
root:[~]# 

답변1

그러나 실제로는 그렇지 않습니다.

ifupifdown인터페이스를 열고 닫는 것 /etc/network/interfaces외에도 /etc/networkDHCP와 같은 다양한 항목에 대한 후크를 제공하는 많은 스크립트도 실행합니다.

반면, ip link ...(새 변형)과 ifconfig ... up/down(기존 변형)은 인터페이스를 켜고 끌 때 필요할 수 있는 추가 작업을 수행하지 않고 인터페이스 상태를 직접 설정합니다.

따라서 ifdown작동하지 않으면 시스템이 클래식 /etc/network/interfaces시스템을 사용하도록 구성되지 않았거나(예: systemd작동하기 때문에 모든 것이 다르게 작동함), 처음에 실행되는 일부 스크립트에 버그가 있거나 뭔가가 있을 수 있습니다. 또 다른.

답변2

새 질서(일을 하는 새로운 방식)와 이전 질서 사이에는 차이 가 ip없습니다 ipconfig. netstat비교를 위해 여기를 참조하십시오:arproute

https://p5r.uk/blog/2010/ifconfig-ip-comparison.html

https://www.tecmint.com/ifconfig-vs-ip-command-comparing-network-configuration/

그러나 ifup및는 ifdown위에 나열된 각 명령 이상의 기능을 수행하는 네트워크 스크립트의 일부입니다. 귀하의 네트워크는 악의적인 사람이나 다른 네트워크 관리자에 의해 관리될 수도 있습니다. 노력하다

rpm -qf `/sbin/ifdown`

ifdown일부 네트워크 관리 팩의 일부일 수 있는지 확인하세요 . 이는 배포판에 따라 다릅니다.

따라서 네트워크 구성 도구가 네트워크를 관리하는 방식을 변경해야 할 수도 있습니다.

관련 정보