LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1154|回复: 2

请问如何使用iptables实现分别控制一个子网的两段ip地址 禁止/允许访问外网?

[复制链接]
发表于 2006-11-17 09:40:38 | 显示全部楼层 |阅读模式
比如ip:192.168.35.2~192.168.35.240
掩码255.255.255.0
代理服务器地址:
192.168.35.253(内网地址)
10.4.31.254(外网地址)

使用 iptables作为防火墙
现在要能够分别控制192.168.35.2~192.168.35.100 和192.168.35.101~192.168.35.240 这个两个ip段的禁止/允许访问外网
但是192.168.35.253这个地址无论何时都要能访问
不知道iptables的规则该何如写? 谢谢!!!!!!
发表于 2006-11-17 13:55:54 | 显示全部楼层
iptables不可以这样设的.
只可以通过 子网掩码来限制某一段.
回复 支持 反对

使用道具 举报

发表于 2006-11-17 19:27:18 | 显示全部楼层
试试这样:
2-100:
192.168.35.2/31
192.168.35.4/30
192.168.35.8/29
192.168.35.16/28
192.168.35.32/27
192.168.35.64/27
192.168.35.96/30
只是奇怪,你为什么要从2开始
当然,你也可以这么控制
iptables -A FORWARD -s 192.168.35.1 -j ACCEPT
iptables -A FORWARD -s 192.168.35.0/26 -j DROP (禁止192.168.35.64之前的地址访问网络)
iptables -A FORWARD -s 192.168.35.64/27 -j DROP(禁止192.168.35.64-192.168.35.95之间的主机访问网络)
iptables -A FORWARD -s 192.168.35.64/30 -j DROP(禁止192.168.35.96-192.168.35.99之间的主机访问网络)
iptables -A FORWARD -s 192.168.35.100 -j DROP(禁止主机192.168.35.100访问网络)
---------------
101~240:
192.168.35.101
192.168.35.102/31
192.168.35.104/29
192.168.35.112/28
192.168.35.128/26
192.168.35.192/27
192.168.35.224/28
192.168.35.240
控制方式与上面相同。
------------
你的这种IP分段方式真是不好,做访问控制的话需要很多语句才行。

如果IP地址是由你分配的,那么最好重新规划一下。

当然,如果你使用iptables的扩展模块,比如iprange这个模块的话,那么你只需要一条语句就可以搞掂。

上面所说的只是使用内核的标准模块。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表