ich habe ein Schulnetzwerk10.0.0.0/8
ich habe Debian mit statisch zugewiesenem IP- 10.122.72.2
Gateway 10.122.72.1
auf eth0 und lokalem Netzwerk 10.122.2.0/24
auf eth1 laufen
Das Problem ist, dass ich auf andere Netzwerke zugreifen kann, z. B. 10.122.1.0/24
aber ich kann von außen nicht auf mein lokales Netzwerk zugreifen, z. B. ping 10.122.2.1
vom 10.122.1.0/24
Netzwerk
tracert 10.122.1.1
aus meinem lokalen Netzwerk geben Sie mir, wie das Paket geroutet wurde10.122.2.1 -> 10.122.72.1 -> 10.122.1.1
Und tracert 10.122.2.1
vom 10.122.1.0/24
Netzwerk gib mir10.122.1.1 -> 10.122.254.9 -> request timed out
sudo route -n
Gib mir das :
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.122.72.1 0.0.0.0 UG 0 0 0 eth0
10.122.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
10.122.72.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
und hier ist mein/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 10.122.72.2
netmask 255.255.255.0
network 10.122.72.0
broadcast 10.122.72.255
gateway 10.122.72.1
# dns-* options are implemented by the resolvconf package, if installed
dns-nameservers 202.46.129.2
auto eth1
iface eth1 inet static
address 10.122.2.1
netmask 255.255.255.0
network 10.122.2.0
broadcast 10.122.2.255
Hier sind meine Firewall-Regeln
outif="eth0"
lanif="eth1"
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -t nat -A POSTROUTING -o $lanif -j MASQUERADE
iptables -t nat -A POSTROUTING -o $outif -j MASQUERADE
Wie kann ich mein lokales Netzwerk von außen zugänglich machen?
Dank im Voraus
Antwort1
Das Problem liegt hier nicht (zumindest noch nicht) an Ihrem Router.
Das tracert
von Ihnen ausgeführte Programm zeigt, dass 10.122.254.9
anscheinend nicht bekannt ist, wohin das Paket als nächstes weitergeleitet werden soll. Sie müssen die anderen Router im Schulnetzwerk so konfigurieren, dass sie 10.122.2.0/24
an Ihren Router weiterleiten.
Sobald dies erledigt ist, sollten Sie NAT sogar von Ihrem Router entfernen können.
Aus den beiden tracert
von Ihnen angegebenen Ergebnissen geht hervor, dass Ihr Netzwerk in etwa so aussieht:
IP-Routing funktioniert Hop für Hop. Wenn Sie versuchen, ein Paket an zu senden 10.122.2.1
, gibt es zwei Möglichkeiten:
- Sie befinden sich im selben Subnetz wie
10.122.2.1
: Sie finden einfach seine Layer-2-Adresse heraus und senden ihm das Paket. - Sie befinden sich in einem anderen Subnetz. Sie suchen in Ihrer Routing-Tabelle nach einem Router in Ihrem Subnetz, der Sie näher an bringt
10.122.2.1
, suchen seine Layer-2-Adresse und senden ihm das Paket. Er befolgt dann dieselben Schritte wie Sie.
In Ihrem Fall können Sie, wenn Sie im 10.122.1.0/24
Netzwerk sind und die oben angegebene Darstellung korrekt ist, eine Nachricht an die von der Schule gesteuerten Router 1 und 2 senden (wobei 2 das Standard-Gateway ist, wenn Sie nicht wissen, an wen Sie die Nachricht senden sollen).
Da Sie nicht im 10.122.2.0/24
Netzwerk sind und nicht wissen, an wen Sie es senden sollen, senden Sie es an das Standard-Gateway, 10.122.1.1
auch bekannt als „von der Schule gesteuerter Router 2“. Es befindet sich nicht im selben Subnetz wie 10.122.2.1
die anderen und hat keinen speziellen Eintrag dafür, also sendet es es an sein Standard-Gateway, 10.122.254.9
das wiederum wahrscheinlich versucht, es an das Internet zu senden, wo es dann gelöscht wird, da es 10.122.2.1
sich in einem privaten IP-Bereich befindet.
Wenn Sie im 10.122.72.0/24
Netzwerk sind, können Sie einen Eintrag hinzufügen, um Ihrem Computer mitzuteilen, dass er 10.122.2.0/24
über erreichbar ist 10.122.72.2
. Da Sie sich jedoch in einem anderen Subnetz befinden, müssen Sie den von der Schule gesteuerten Routern mitteilen, dass 10.122.2.0/24
er über erreichbar ist 10.122.72.2
. In diesem Fall würde das bedeuten, dass Sie den von der Schule gesteuerten Router 1 mit einem direkten Eintrag aktualisieren, der Ihr Netzwerk als über Ihren Debian-Rechner erreichbar angibt, und den von der Schule gesteuerten Router 2 mit einem Eintrag, der Ihr Netzwerk als über den von der Schule gesteuerten Router 1 erreichbar angibt.
Ohne Kontrolle über die Schulrouter ist dies nicht möglich. Das Beste, was Sie tun können, ist, einen VPN-Server auf Ihrem Debian-Rechner einzurichten und dann den Datenverkehr über 10.122.2.0/24
eine VPN-Verbindung zu tunneln.