안녕하세요, 스태커 친구들,
네트워크 구성을 완벽하게 계획했는지 잘 모르겠습니다.
다음과 같은 홈 네트워크 토폴로지가 있습니다.
모뎀/라우터<->데비안 라우터<->LAN.
내 LAN(데비안 라우터 뒤에 있는)에서 인터넷에 접속해야 합니다.
이 3가지 규칙이 있을 때데비안 라우터, WAN에 액세스할 수 있습니다.
default via 192.168.0.10 dev enp1s0f1
10.0.0.0/24 dev enp1s0f0 proto kernel scope link src 10.0.0.12
192.168.0.0/24 dev enp1s0f1 proto kernel scope link src 192.168.0.12
192.168.0.10
내 모뎀/라우터야.192.168.0.0/24
모뎀/라우터와 데비안 라우터 분기가 있는 소규모 LAN입니다..10.0.0.0/24
내 Pi가 위치한 개인 LAN입니다.
내 문제는 192.168.0.10
데비안 라우터를 통해 내 워크스테이션에서 모뎀에 ping을 보낼 수 없다는 것입니다.10.0.0.4
편집: 새로운 시도:
나는 /etc/network/interfaces를 이런 식으로 수정했습니다.데비안 라우터:
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
allow-hotplug enp1s0f0
iface enp1s0f0 inet static
address 10.0.0.12
netmask 255.255.255.0
allow-hotplug enp1s0f1
iface enp1s0f1 inet static
address 192.168.0.12
netmask 255.255.255.0
gateway 192.168.0.10
결과: 네트워크 서비스 확인이 통과되었습니다. 다음 경로를 생성합니다.데비안 라우터:
default via 192.168.0.10 dev enp1s0f1 onlink
10.0.0.0/24 dev enp1s0f0 proto kernel scope link src 10.0.0.12
192.168.0.0/24 dev enp1s0f1 proto kernel scope link src 192.168.0.12
데비안 라우터 WAN에서 핑을 보낼 수 있고, DNS도 괜찮고, 핑도 괜찮습니다. 10번 네트워크의 Pi에서 모뎀/라우터를 ping할 수 없습니다.10. 데비안 라우터(192.168.0.12)의 반대편에 ping을 보낼 수 있습니다.
데비안 라우터에는 다음과 같은 ufw 설정이 있습니다.:
*nat
#:PREROUTING ACCEPT - [0:0]
:POSTROUTING ACCEPT - [0:0]
#Port fwd
#-A PREROUTING -i enp1s0f1 -p tcp --dport 22 -j DNAT --to-destination 10.0.0.3
# Forward traffic from source through iface
-A POSTROUTING -s 10.0.0.0/24 -o enp1s0f1 -j MASQUERADE
# don't delete the 'COMMIT' line or these nat table rules won't be processed
COMMIT
왜 Rasbian에서 모뎀/라우터를 핑할 수 없는지 모르겠습니다(핑은 ufw에서 허용됩니다. 그게 말이 되는지 모르겠습니다).
net.ipv4.ip_forward=1
설정하다데비안 라우터.
iptables-nvL:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
117K 7348K ACCEPT all -- enp1s0f0 * 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
iptables -t nat -nvL:
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Rasbian에는 다음 경로가 있습니다(간체).:
default via 10.0.0.12 { the debian router's directly connected iface }
10.0.0.0/24 via 10.0.0.12
그렇다면 Raspbian Pi에서 모뎀을 ping할 수 없는 이유에 대한 단서는 있습니까? :-)
답변1
iptables
출력이 Debian 라우터에서 나온다고 가정하면 방화벽 MASQUERADE
규칙이 아직 적용되지 않은 것입니다. (실제로는 어떤 규칙도 적용되지 않습니다.)
이 문제를 해결하려면 다음 두 가지 중 하나를 수행할 수 있습니다.
ufw
ufw
전체 10.0.0.0/24 네트워크가 데비안 라우터의 단일 외부 연결 IP 주소 뒤에 숨겨지도록 적절한 명령(저는 사용하지 않음)을 사용하여 방화벽 규칙을 적용하세요.
또는
- 192.168.0.12를 통해 내부 10.0.0.0/24 네트워크에 연결할 수 있음을 나타내는 모뎀/라우터에 고정 경로를 만듭니다. 그렇지 않으면 업스트림을 가리키는 기본 경로가 그러한 패킷을 보낼 수 있는 유일한 장소가 됩니다.
답변2
문제를 발견했습니다. 설정하는 걸 잊어버렸나 봐
DEFAULT_FORWARD_POLICY="ACCEPT"
/etc/default/ufw를 입력합니다.
@roaima가 지적했듯이 FORWARD ACCEPT 이전에는 ACCEPT 규칙이 없습니다. 이제 모든 것이 예상대로 작동합니다 :-)