我有一个问题,即使规则应用没有任何错误,它们也不起作用
现在我的配置
iptables -A PREROUTING -t mangle -s 192.168.0.113 -p tcp -m multiport --dports 80,443 -j MARK --set-mark 3
现在该表有以下条目
MARK tcp -- 192.168.0.113 0.0.0.0/0 multiport dports 80,443 MARK set 0x3
测试配置,找出 IP 地址
MacBookCROSP:~ crosp$ ping www.dd-wrt.com
PING www.dd-wrt.com (83.141.4.210): 56 data bytes
64 bytes from 83.141.4.210: icmp_seq=0 ttl=55 time=34.097 ms
发出一些 http 请求
root@CROSP 路由器:~# cat /proc/net/nf_conntrack | grep "83.141.4.210"
得到以下内容
ipv4 2 tcp 6 106 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53095 dport=80 packets=8 bytes=1185 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53095 packets=9 bytes=8140 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 107 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53097 dport=80 packets=17 bytes=1726 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53097 packets=27 bytes=34596 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 105 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53096 dport=80 packets=18 bytes=1777 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53096 packets=27 bytes=34850 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 3596 ESTABLISHED src=192.168.0.113 dst=83.141.4.210 sport=53109 dport=80 packets=4 bytes=220 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53109 packets=1 bytes=60 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 107 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53094 dport=80 packets=8 bytes=1185 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53094 packets=9 bytes=8140 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 116 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53093 dport=80 packets=6 bytes=324 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53093 packets=2 bytes=112 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 116 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53108 dport=80 packets=5 bytes=272 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53108 packets=3 bytes=164 [ASSURED] mark=0 use=2
ipv4 2 tcp 6 116 TIME_WAIT src=192.168.0.113 dst=83.141.4.210 sport=53098 dport=80 packets=6 bytes=324 src=83.141.4.210 dst=193.151.106.238 sport=80 dport=53098 packets=3 bytes=164 [ASSURED] mark=0 use=2
它出了什么问题?为什么包裹没有标记?请帮忙解决问题。
答案1
我无法让 PREROUTING 在 DDWRT 上工作,即使它与 vanilla linux 内核一起工作。我在 DD-WRT 论坛上提问,他们告诉我要禁用快捷方式转发引擎。我相信这是高通的问题。忽略有关后路由等的建议。
另一种方法是使用代理,因为输出链损坏是有效的。