Ich habe einen Router mit Linux. Die Netzwerkkonfiguration hat eine Standardroute zu meinem ISP für den öffentlichen Internetzugang. Ich muss jetzt den Zugriff auf ein angegebenes Zielnetzwerk verhindern.
Ursprüngliche Routentabelle:
Destination Gateway Genmask Flags Metric Ref Use Iface
default 172.16.6.254 0.0.0.0 UG 0 0 0 eth0.2
10.99.0.0 * 255.255.255.0 U 0 0 0 tap0
Angenommen, 74.1.1.0/24 ist das Netzwerk, das ich Routing verbieten möchte. Ich hoffe, dass jeder an diesen Router angeschlossene Client für eine Adresse in diesem Netzwerk "Netzwerk nicht erreichbar" erhält.
Gibt es sowieso das zu tun?
Antworten:
Verwenden Sie iproute2.
In diesem Fall ist es besser, das Routing zu verwenden, um den ausgehenden Datenverkehr zu diesem Netzwerk zu verweigern, als den Netzfilter. Für Inbound ist es idiomatischer, netfilter zu verwenden, wie in einer anderen Antwort hier, aber mit
--src
statt--dst
und besser mit verbotenem ICMP-Administrator oder einfach fallen zu lassen. Sie können die RPDB verwenden (sieheip-rule(8)
, um den gleichen Effekt zu erzielen, wird aber wahrscheinlich fehl am Platz aussehen).Verwenden Sie nicht ifconfig, route oder andere Tools aus dem
net-tools
Paket. Sie sind längst veraltet.Sie können bestätigen, was der Router selbst als Routingentscheidung verwendet.
Beachten Sie, dass das Verb 'get' nicht mit 'show' (oder 'list') identisch ist, da es die Routing-Entscheidung 'berechnet', anstatt nur Einträge in der Routing-Tabelle zu filtern und aufzulisten.
Bei Hosts auf Ihrer Seite des Netzwerks ist das ICMP-Zielnetz nicht erreichbar.
Wenn der betroffene Benutzerbereich defekt ist und nicht sofort einen Fehler zurückgibt, ist dies ein weiteres Problem. Der Kernel kann solch einen fehlerhaften Benutzerraum nicht kompensieren.
quelle
Sie können netfilter verwenden
man iptables
sagt folgendes über die--reject-with
Optionquelle
Fügen Sie eine Route hinzu, die auflo
dieses Subnetz verweist :route add -net 74.1.1.0/24 gw 127.0.0.1 lo
Der
ip
Befehl hat einenblackhole
Parameter, über den ich gerade herausgefunden habe:ip route add blackhole 74.1.1.0/24
Lesen Sie mehr .Sieht so aus, als gäbe es eine
reject
Option - sehen Sie, ob das das tut, was Sie brauchen:route add -net 74.1.1.0/24 reject
quelle
REJECT = klopfe an die Tür, du schrei weg!
DROP = klopfe an die Tür, du sitzt leise und der Besucher geht,: Theorie? ..: P
Kommt darauf an, was du erreichen willst, meine Meinung ist
REJECT sagt zu jemandem, er solle versuchen, die Konversation fortzusetzen, bis ACCEPT erreicht ist. DROP sagt nichts, um die Konversation zu beenden. CLOSED,: up2you :).
quelle