터미널 명령을 통해 IPv6 시스템 전체를 비활성화하려면 어떻게해야합니까?
/etc/modprobe.d/aliases 편집을 읽고 교체했습니다.
alias net-pf-10 ipv6
와:
alias net-pf-10 off
alias ipv6 off
적용해도 안전한가요? 재부팅 할 때마다 ipv6을 영구적으로 비활성화합니까?
터미널 명령을 통해 IPv6 시스템 전체를 비활성화하려면 어떻게해야합니까?
/etc/modprobe.d/aliases 편집을 읽고 교체했습니다.
alias net-pf-10 ipv6
와:
alias net-pf-10 off
alias ipv6 off
적용해도 안전한가요? 재부팅 할 때마다 ipv6을 영구적으로 비활성화합니까?
답변:
다음 줄을 넣으면 IPv6을 성공적으로 비활성화했습니다 /etc/sysctl.conf
.
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
또한이 명령을 실행하여 변경 사항을로드하십시오.
sudo sysctl -p
sudo sysctl -p
또는 재부팅하여 변경 사항을 적용하십시오.
net.ipv6.conf.wlan0.disable_ipv6 = 1
부팅시 PC가 /etc/sysctl.conf를로드하지 않으면 (이 경우에는) grub에서 IPv6을 비활성화해야합니다. Linux 커널에는 부팅시 IPv6를 비활성화하는 "ipv6.disable = 1"이라는 부팅 옵션이 있습니다.
부팅 옵션을 편집하려면 루트 사용자로 텍스트 편집기를 사용하여 "/ etc / default / grub"을 편집하십시오.
sudo nano /etc/default/grub
"GRUB_CMDLINE_LINUX_DEFAULT"가 포함 된 줄을 찾으십시오.
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
부팅 옵션에 "ipv6.disable = 1"을 추가 한 다음 grub 파일을 저장하십시오.
GRUB_CMDLINE_LINUX_DEFAULT="ipv6.disable=1 quiet splash"
마지막으로, grub을 업데이트하십시오 :
sudo update-grub
/proc/sys/net/ipv6/
등의 문제가 발생할 수 있습니다 남아 X11 forwarding request failed
있기 때문에 sshd
시도가 구성되지 않은 IPv6 인터페이스에 결합하는가. 마찬가지로 순수한 IPv6 VM에서 IPv4를 제거 할 수 있습니다. 감사.
달리는 것에 대한 의견을 포함한 Carvalho의 답변 sudo sysctl -P
이 가장 도움이되었습니다.
그러나 내 경우에는 적어도 :
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.<mydevice>.disable_ipv6 = 1
두 번째 줄이 필요한 것 같습니다.
어쩌면 이것은 TP-Link Archer T2U를 사용하고 있다는 사실과 관련이있을 수 있습니다 .TP2 링크 아처 T2U는 소스에서 드라이버를 사용자 정의해야했습니다.
결과적 <mydevice>
으로 " all
" 중 하나로 간주되지 않는다고 가정 합니다.
요약하자면, (사용자 정의) 네트워킹 드라이버를 사용자 정의하여 추가 한 경우 net.ipv6.conf.all.disable_ipv6 = 1
IPv6 네트워킹을 비활성화하기에 충분하지 않을 수 있습니다.
그래도 나는 선을 시도하지 않았다는 것을 인정해야한다
net.ipv6.conf.default.disable_ipv6 = 1
default
라인 의 부족 은 아마도 여기서 문제 일 것입니다. 드라이버는 sysctl을 실행 한 부팅 프로세스의 시점에서 아직로드되지 않은 경우, 다음은 포함되지 않았다 all
-하지만이 경우 기본값을 설정하면, 나중에 설정을 얻었을 것입니다 의미하는 것이다 되었다 로드.
default
항목을 나는 성공적으로 해제 할 수있는 특정 장치를 구성했다.
컴퓨터에서 ipv6가 활성화되어 있는지 확인하는 방법은 다음과 같습니다.
test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"
당신이 볼 경우
Running kernel is IPv6 ready
활성화되어 있습니다.
출력이 없으면 출력되지 않습니다.
이 페이지의 다른 답변이 효과가없는 경우 ipv6을 비활성화하려면 ipv6을 모두 블랙리스트에 추가하십시오. 이렇게하려면 다음 명령을 사용하십시오.
echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null
또한 이것도 도움이 될 수 있습니다.
echo 'install ipv6 /bin/true' | sudo tee -a '/etc/modprobe.d/blacklist.local' >/dev/null
변경 사항을 적용하려면 재부팅하십시오. 시작 후 활성화되었는지 확인하려면이 명령을 다시 실행하십시오.
test -f /proc/net/if_inet6 && echo "Running kernel is IPv6 ready"
출력이 없어야합니다.
ipv6
기능이 커널 모듈 이라고 가정합니다 ( blacklist.local
로드를 방지하기 위해 사용 ). 그와 커널 부팅 할 필요가있는 경우 커널 (안 모듈)로 컴파일 IPv6의 경우가 ipv6.disable=1
부팅 paremeter가 (이렇게하려면 한 것이다 : (1) sudo gedit /etc/default/grub
(2) 라인을 검색 GRUB_CMDLINE_LINUX_DEFAULT=<args>
(3) ipv6.disable=1
부팅 매개 변수에 추가 )
Ubuntu의 최신 버전 (16.04 LTS에 있음)을 사용하는 경우이 깔끔한 솔루션을 사용할 수 있습니다.
/etc/sysctl.d/60-ipv6-disable.conf
다음 텍스트를 포함하여 작성하십시오 .
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
운영 service procps start
service procps restart
대신 우분투 18.04 에서 실행 했다