こんにちは、スタッカーの友達、
ネットワーク構成を完全に計画したかどうかはわかりません。
次のホームネットワークトポロジがあります。
モデム/ルーター<-> Debianルーター<->LAN。
私のLAN(Debianルーターの背後にある)からインターネットに接続する必要があります。
この3つのルールがあるときDebian ルーター、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
モデム/ルーターとDebianルーターの分岐がある小規模LANです。。10.0.0.0/24
私のPiがあるプライベートLANです。
私の問題は、192.168.0.10
Debianルーターを介して私のワークステーションからモデムにpingを送信できないことです。10.0.0.4
編集:新しい試み:
私はこのように/etc/network/interfacesを修正しました。Debian ルーター:
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
結果:ネットワークサービスの確認に合格しました。次のパスを作成します。Debian ルーター:
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
Debian ルータの WAN から Ping を送信でき、DNS も大丈夫、Ping も大丈夫です。 10番ネットワークのPiでモデム/ルーターをpingできません10。 Debian ルーター (192.168.0.12) の反対側に ping を送信できます。
Debian ルータには次の 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でモデム/ルーターをpingすることができないのかわかりません(pingはufwで許可されていますが、それが何を意味するのかわかりません)。
net.ipv4.ip_forward=1
設定するDebian ルーター。
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
まだ適用されていません。 (実際にはいかなる規則も適用されません。)
この問題を解決するには、次の2つのいずれかを実行できます。
ufw
ufw
10.0.0.0/24 ネットワーク全体が Debian ルーターの単一の外部接続 IP アドレスの後ろに隠れるように、適切なコマンド (私は使用しない) を使用してファイアウォールルールを適用します。
または
- 192.168.0.12 を介して内部 10.0.0.0/24 ネットワークに接続できることを示すモデム/ルーターに固定パスを作成します。そうでなければ、アップストリームを指す基本パスがそのようなパケットを送信できる唯一の場所になります。
答え2
問題を発見しました。設定するのを忘れてしまったみたい
DEFAULT_FORWARD_POLICY="ACCEPT"
/etc/default/ufwと入力します。
@roaimaが指摘したように、FORWARD ACCEPTの前にACCEPTルールはありません。今、すべてが期待どおりに動作します:-)