net.ipv4.conf.all.forwarding과 net.ipv4.ip_forward의 차이점

net.ipv4.conf.all.forwarding과 net.ipv4.ip_forward의 차이점

~에 따르면https://www.kernel.org/doc/Documentation/networking/ip-sysctl.txt

conf/all/*    is special, changes the settings for all interfaces
forwarding - BOOLEAN
    Enable IP forwarding on this interface.  This controls whether packets
    received _on_ this interface can be forwarded.
ip_forward - BOOLEAN
    0 - disabled (default)
    not 0 - enabled

    Forward Packets between interfaces.

    This variable is special, its change resets all configuration
    parameters to their default state (RFC1122 for hosts, RFC1812
    for routers)

따라서 모든 인터페이스에서 IPv4 패킷 전달을 비활성화하는 것은 net.ipv4.conf.all.forwarding=0모든 인터페이스에서 IPv4 패킷 전달을 비활성화하는 것과 같습니다.net.ipv4.ip_forward=0

net.ipv4.conf.all.forwarding커널 매개변수와 커널 매개변수의 차이점을 설명할 수 있는 사람이 있습니까 net.ipv4.ip_forward?

답변1

설명에 따르면 ip_forward인터페이스 간 패킷 포워딩에 대한 값만 변경되는 것이 아니라 다른 구성도 변경된다. 이전에 언급한 대로 다른 구성은 기본값(호스트의 경우 FC1122, 라우터의 경우 RFC1812)으로 설정됩니다.

의 경우 forwarding다른 구성에 영향을 주지 않고 사용법에 따라 특정 인터페이스 또는 모든 인터페이스에 설정됩니다.

예를 들어, ipv4.conf.all.forwarding=1ipv4 전달은 다른 구성에 영향을 주지 않고 모든 인터페이스에 설정되고, ipv4.ip_forward=1ipv4 전달은 모든 인터페이스에 설정되지만 구성도 변경됩니다.

답변2

실제로 두 매개변수 모두 광범위한 수준에서 IP 전달에 영향을 미칩니다. 그러나 net.ipv4.conf.all.forwarding의 목적은 특정 네임스페이스에 대한 전달을 활성화 또는 비활성화하려는 복잡한 네트워크 시나리오를 처리할 때 네트워크 네임스페이스 내에서 보다 세부적인 제어를 제공하는 것입니다. 이는 다른 네임스페이스에 영향을 주지 않습니다. .

관련 정보