请教iptable 中string模块的问题
我用的是centos 5系统.好像默认的iptable自带了string模块.
现在发现一个问题.string模块无法匹配udp包(tcp包测试没有问题).
[root@localhost named]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
DROP all -- anywhere anywhere STRING match "1234.net" ALGO name bm TO 65535
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain FORWARD (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain RH-Firewall-1-INPUT (2 references)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere icmp any
ACCEPT esp -- anywhere anywhere
ACCEPT ah -- anywhere anywhere
ACCEPT udp -- anywhere 224.0.0.251 udp dpt:mdns
ACCEPT udp -- anywhere anywhere udp dpt:ipp
ACCEPT tcp -- anywhere anywhere tcp dpt:ipp
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT udp -- anywhere anywhere state NEW udp dpt:domain
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
C:UsersAdministrator>nslookup www.1234.net 192.168.30.78
服务器: UnKnown
Address: 192.168.30.78
名称: www.1234.net
Address: 127.0.0.1
请问各位有什么好的解决方法?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
您好,
如果目前核心為 2.6.28,iptables版本為1.4.10。
可以說明一下 domain 的修改方式嗎??
iptables的string很一般,搞封锁用squid不是更好吗
恩,就是这个,但是很久没有维护了,可能在新 kernel 新 iptables 中无法编译通过,要自行修改代码
下载白金版的domain模块看看把
{:3_186:}谢谢老大提点.
你所说的domain模块是http://bbs.chinaunix.net/viewthread.php?tid=791863
这个吗?
DNS 包里面存放的不是 "www.1234.net" 这样的数据,中间的分割符不是 ".",而是数字
抓包看一下就明白了
如果你想拦截域名,可以参考我写的 domain 模块