linux – Blackhole路由私有内部网流量

我有一个私有网络,有少数 Linux路由器通过OSPF共享所有路由.如何黑洞我没有路由的专用网络范围?

换句话说,我想确保我永远不会将10.0.0.0 / 8,172.16.0.0 / 12或192.168.0.0/24路由到默认网关.我不能只为这些网络创建静态接收器(黑洞)路由,因为其中一个私有范围内的网络可能会通过OSPF进行通告.

我可以使用netfilter来删除默认GW连接接口的所有流量,如果它在私有范围内,但我认为iproute2 / linux可能有一个更简单或更“正确”的解决方案.

解决方法

ip route add blackhole 10.0.0.0/8
ip route add blackhole 172.16.0.0/12
ip route add blackhole 192.168.0.0/16

由于更多特定路由始终优先,因此通过OSPF通告的任何范围将优先于黑洞路由.

思科:

router>sh ip route
Codes: C - connected,S - static,R - RIP,M - mobile,B - BGP
       D - EIGRP,EX - EIGRP external,O - OSPF,IA - OSPF inter area 
       N1 - OSPF NSSA external type 1,N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1,E2 - OSPF external type 2
       i - IS-IS,su - IS-IS summary,L1 - IS-IS level-1,L2 - IS-IS level-2
       ia - IS-IS inter area,* - candidate default,U - per-user static route
       o - ODR,P - periodic downloaded static route

Gateway of last resort is 0.0.0.0 to network 0.0.0.0

     xx.0.0.0/32 is subnetted,2 subnets
C       xx.xx.xx.192 is directly connected,Dialer0
C       xx.xx.xx.1 is directly connected,Dialer0
     10.0.0.0/8 is variably subnetted,2 subnets,2 masks
C       10.10.0.0/30 is directly connected,Tunnel1
S       10.0.0.0/8 is directly connected,Null0
C    192.168.1.0/24 is directly connected,FastEthernet0/0
S*   0.0.0.0/0 is directly connected,Dialer0
S    172.16.0.0/12 is directly connected,Null0
S    192.168.0.0/16 is directly connected,Null0

在Linux上:

michael:~$sudo ip route add blackhole 192.168.0.0/16 
michael:~$ping 192.168.0.1
PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.
64 bytes from 192.168.0.1: icmp_req=1 ttl=64 time=0.238 ms
64 bytes from 192.168.0.1: icmp_req=2 ttl=64 time=0.180 ms
<...>
michael@challenger:~$ping 192.168.1.1
connect: Network is unreachable

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...