>

네트워크를 IPv6 인터넷에 연결하려고하는데 /proc 에있는 커널 ipv6 설정을 제어해야합니다. . all 에 대한 각 인터페이스에 대한 구성이 있음을 알고 있습니다.  인터페이스와 default  구성. 내 질문은 : 개별 값이 서로 모순되면 어떤 설정이 승리합니까? 개별 설정에 대한 유용한 문서를 찾을 수 있었지만 우선 순위 설정에 대해 모르겠습니다 ...

IPv4에 관한 관련 질문 이 있지만 주로 all 의 차이점에 대해 이야기합니다. default  그리고 개별 인터페이스. 그로부터 구체적인 설정은 항상 논리적으로 결합됩니다. 그러나 나에게 가장 중요한 필드 (다음 예 참조)는 다루지 않았으며 IPv6은 다르게 구현되어 참조 답변의 참조 커널 소스 파일이 내 IPv6 문제 및 다음 예에 도움이되지 않습니다.

몇 가지 예 :

cat /proc/sys/net/ipv6/conf/all/accept_ra
0
cat /proc/sys/net/ipv6/conf/eth1/accept_ra
1

eth1이 라우터 광고를 수락합니까?

cat /proc/sys/net/ipv6/conf/all/forwarding
1
cat /proc/sys/net/ipv6/conf/eth1/forwarding
0
cat /proc/sys/net/ipv6/conf/eth1/accept_ra
1

eth1이 라우터 광고를 수락합니까?

cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
cat /proc/sys/net/ipv6/conf/all/accept_ra
1
cat /proc/sys/net/ipv6/conf/eth1/disable_ipv6
0
cat /proc/sys/net/ipv6/conf/all/accept_ra
0

eth1이 라우터 광고를 수락합니까?

cat /proc/sys/net/ipv6/conf/all/disable_ipv6
1
cat /proc/sys/net/ipv6/conf/all/fowarding
1
cat /proc/sys/net/ipv6/conf/eth1/disable_ipv6
0
cat /proc/sys/net/ipv6/conf/all/accept_ra
1

eth1이 라우터 광고를 수락합니까?


  • 답변 # 1

    <올>

    의존

    의존

    "default"항목은 기본값입니다. 인터페이스가 나타나면 거기에서 매개 변수를 상속합니다.

    "pall"항목은 모든 인터페이스에 매개 변수를 한 번에 할당하기위한 것입니다. 그렇다고 모든 인터페이스가 해당 매개 변수에 잠겨있는 것은 아닙니다. 예를 들어,

    echo 0 > /proc/sys/net/ipv6/conf/all/accept_ra
    echo 1 > /proc/sys/net/ipv6/conf/enp2s1/accept_ra
    
    

    그런 다음

    cat /proc/sys/net/ipv6/conf/all/accept_ra
    0
    cat /proc/sys/net/ipv6/conf/enp2s1/accept_ra
    1
    cat /proc/sys/net/ipv6/conf/wlp2s0/accept_ra
    0
    
    

    따라서 "모두"는 어떤 종류의 상태도 나타내지 않으며, 집단 할당만을위한 것입니다.

  • 답변 # 2

    흥미롭게도,전달매개 변수.

    IPv4에서는 일부 인터페이스를 전달할 수 있습니다. 내부 인터페이스의 일부 서브넷을 실제로 비공개로 유지하려는 멀티 홈 호스트에서 특히 유용합니다. .../all/forwarding 를 사용하여 모든 인터페이스에 대한 전달을 활성화 할 수도 있습니다.  나중에 나오는 인터페이스에 대해 기본값을 정의 할 수 있습니다. 괜찮습니다.하지만 ...

    IPv6에서이 동작은 실제로 다릅니다. 나는 forwarding=1 를 설정했습니다   ../all/forwarding=1 를 설정하지 않은 일부 IPv6 인터페이스  전달이 전혀 없다는 사실에 놀랐습니다. 커널 매개 변수 매뉴얼은 다음과 같이 말합니다 :

    와이즈 비즈

    따라서

    11.2.3.5. forwarding

    Type: BOOLEAN

    Default: FALSE if global forwarding is disabled (default), otherwise TRUE

    Configure interface-specific Host/Router behaviour. Note: It is recommended to have the same setting on all interfaces; mixed router/host scenarios are rather uncommon. [...]

     필수이며 작동하려면 호스트가 라우터 일뿐 (라우터 요청 없음, 라우터 advs 및 리디렉션 무시 됨) 또는 일반 호스트 (라우터 advs 및 autoconf 허용) 일 수 있으므로 논리적으로 들립니다. ) 그러나 IPv4와 차별화되는 인터페이스 선택에서 동시에 또는 둘 다 다르게 동작 할 수는 없습니다

    /proc/sys/net/ipv6/conf/all/forwarding=1 라는 용어  여기에 매우 혼란스럽고 all 로 대체해야합니다.  IPv6에서 일단 설정하면 하나 이상의 다른 인터페이스에서 전달을 해제하여 전달에서 제외 할 수 있습니다. 그래서 enabled 의 조건  더 이상 만나지 않습니다. 이제 나는 당신이 그들 중 하나를 지우면 all 를 기대합니다.  너무 지워? ...하지만 놀랍게도 그렇지 않습니다!

    all 라면 질문은  다른 all 를 재정의합니다.  설정 후

    forwarding
    
    
    echo 1 > /proc/sys/net/ipv6/conf/all/forwarding echo 0 > /proc/sys/net/ipv6/conf/enp2s1/forwarding echo 1 > /proc/sys/net/ipv6/conf/enp2s2/forwarding 때 동시에

    사실이 될 수 없습니다  내 관점에서 볼 때 그것은 단순히 모순입니다!

    all

  • 이전 command line - stdin을 클립 보드에 보내려면 어떻게합니까?
  • 다음 데비안 제시 실행, 일부 패키지 누락