Debian Bookworm이 설치된 Raspberry Pi가 있습니다. 패킷 전달을 방지하려고 합니다. 이렇게 설정할 수 있다는 것을 알고 있지만 sudo sysctl -w net.ipv4.ip_forward=0
재부팅 후에도 지속되지 않습니다.
또한 재부팅 후 패킷 전달이 활성화된다는 것을 net.ipv4.ip_forward = 0
파일 하단에 추가해 보았습니다 . /etc/sysctl.conf
또한 디렉터리에 이 줄이 포함된 파일(99-forward.conf)을 추가했으며 /etc/sysctl.d/
재부팅 후에도 패킷 전달이 계속 활성화됩니다.
추가 정보:
- 해당 인터페이스에 연결된 다른 전화에서 IP 전달이 작동하는지 확인하고 있습니다
sysctl -n net.ipv4.ip_forward
(액세스 포인트이고 IP 전달이 비활성화되어 있으면 인터넷에 액세스할 수 없다는 것을 알고 있습니다). - 내가 실행하면
sudo sysctl -w net.ipv4.ip_forward=0
현재 시작에서 작동합니다 - 리눅스 커널: 리눅스 6.1.0-rpi7-rpi-v8 aarch64
- NetworkManager를 설치했습니다(도움이 되나요?)
ls -al /etc/sysctl.d
산출
total 20
drwxr-xr-x 2 root root 4096 Feb 29 17:04 .
drwxr-xr-x 91 root root 4096 Feb 29 17:11 ..
-rw-r--r-- 1 root root 92 May 10 2023 98-rpi.conf
-rw-r--r-- 1 root root 55 Feb 29 17:01 99-forward.conf
lrwxrwxrwx 1 root root 14 Nov 10 00:25 99-sysctl.conf -> ../sysctl.conf
-rw-r--r-- 1 root root 798 Dec 19 2022 README.sysctl
답변1
이것은 Stéphane Chazelas의 도움으로 발견되었습니다. 당신의 도움을 주셔서 감사합니다.
이 문제는 NetworkManager와 관련이 있습니다. ipv4 방법이 공유로 설정된 액세스 포인트가 있습니다. 이로 인해 net.ipv4.ip_forward가 1로 설정됩니다.
여전히 공유할 액세스 포인트를 설정하고 싶었기 때문에 해결 방법을 찾았습니다. 파일에 다음을 추가하고 /etc/NetworkManager/dispatcher.d/99-disable-ip-forward
실행 가능하게 만들었습니다( sudo chmod +x /etc/NetworkManager/dispatcher.d/99-disable-ip-forward
).
#!/bin/sh
INTERFACE=$1
ACTION=$2
if [ "$INTERFACE" = "ap0" ] && [ "$ACTION" = "up" ]; then
sudo sysctl -w net.ipv4.ip_forward=0
sudo sysctl -w net.ipv6.conf.all.forwarding=0
fi
네트워크 이벤트가 발생하면 NetworkManager가 스크립트를 실행하여 /etc/NetworkManager/dispatcher.d/
자동으로 net.ipv4.ip_forward를 0으로 설정합니다.