재부팅간에 지속되는 nf_conntrack_max proc / sys / net

에서 /proc나는 nf_conntrack_max 두 가지 항목이 있습니다 :

/ proc / sys / net / netfilter / nf_conntrack_max
/ proc / sys / net / nf_conntrack_max

하나를 변경하는 것과 동일한 값을 가리키는 것처럼 보이는 것도 다른 하나를 변경합니다. 이 두 가지를 모두 설정하면 /etc/sysctl.conf:

net.netfilter.nf_conntrack_max = 65528
net.ipv4.netfilter.ip_conntrack_max = 65535

재부팅 후 값은 32764로 유지되므로 변경 사항이 작동하지 않습니다. 누구든지 전에이 문제를 겪었습니까? 내 생각 엔 이러한 값이 관련 모듈이로드되기 전에 적용되지만 누군가가 이미 솔루션을 알고 있기를 바랐습니다.



답변

/proc/sys/net/nf_conntrack_max모듈에 의존 하기 때문 입니다 nf_conntrack. 그러나이 모듈은 시스템을 시작할 때 기본적으로로드되지 않습니다.

하지만 네가 달리면

iptables -t nat -L

또는

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

이 모듈은 시스템 지원 (당신이 램의 경우 최대 수는 65536> 4G입니다 만의 서로 다른 시스템에 따라 다릅니다.) 그 최대 수를 자동으로 설정로드됩니다 당신이 (6553600 같은) 더 큰 숫자로 설정할 수 있습니다 /etc/sysctl.conf) .

해결책 :

파일 끝에 한 줄을 추가하십시오 /etc/modules.

nf_conntrack

이 모듈은 sysctl실행 되기 전에 시스템 시작시로드됩니다 .


답변

다음과 같아야합니다.

net.netfilter.nf_conntrack_max = 65535

이제 다음과 같이 다시 시작하지 않고도이를 설정할 수 있습니다. sysctl -p /etc/sysctl.conf


답변

우분투를 사용하지는 않지만 CentOS의 마음에서 이것을 생각하면서, 당신이했던 것과 같은 가설을 생각해 냈습니다 .sysctls가 너무 일찍 적용되고 있습니다. 일부 검색에 따르면 2006 년 이후 로 이것이 버그로보고 되었습니다 .

procps init 스크립트를 다시 실행하기 위해 우선 순위> S40으로 다른 심볼릭 링크를 배치하는 것이 필요한 것 같습니다. 버그 요약에 따르면, 우분투 sysctl 방법론의 일부 재구성이 순서대로되어있는 것 같습니다.