关于使用iptables对url的重定向
来源:互联网 发布:淘宝返利用什么 编辑:程序博客网 时间:2024/05/19 00:40
1. 背景
想做对url的重定向,通过iptables的string模块匹配在nat链PREROUTING始终无法实现DNAT,例如:
iptables -t nat -I PREROUTING -m string --string "baidu.com" --algo bm -j DNAT --to-destination 192.168.1.1
但是对其他特征能进行DNAT,例如:
iptables -t nat -I PREROUTING -p tcp --dport 80 -s xx.xx.xx.xx -d xx.xx.xx.xx -j DNAT --to-destination 192.168.1.1
2. 关于PREROUTING
只是最开始进行一次PREROUTING进行路由,之后不再通过PREROUTING,即一个http请求,先tcp握手的时候进入了PREROUTING,而这个握手的过程是匹配不到url的,然后之后包含了url的http请求则直接走FORWARD了。
3. 解决
可以通过dnsmasq来辅助实现。
tcp握手的过程的dip即是之前通过dns获取的,所以通过修改dnsmasq使其匹配到url的dns请求时传出该url的ip,例如:
nslookup baidu.com23.34.56.78则
iptables -t nat -I PREROUTING -m string --string "baidu.com" --algo bm -j DNAT --to-destination 192.168.1.1等价于
iptables -t nat -I PREROUTING -p tcp --dport 80 -d 23.34.56.78 -j DNAT --to-destination 192.168.1.1
0 0
- 关于使用iptables对url的重定向
- 关于url重定向的问题
- 利用iptables对端口重定向
- ubuntu iptables重定向
- iptables 端口重定向
- 重定向的使用
- android webview对shouldOverrideUrlLoading的理解,对于重定向的url
- 使用iptables进行端口重定向(转发)
- JSP/Servlet的URL重定向
- JSP/Servlet的URL重定向
- JSP/Servlet的URL重定向
- JSP/Servlet的URL重定向
- url重定向的校验方法
- 联盟商家平台的url重定向
- php的URL重定向函数
- 获取重定向后的url
- 修复K2_user的重定向URL不起作用
- Thinkphp3.2的URL重定向
- 兄弟郊游问题
- 打破恐惧方能奔向明天
- ProtoBuf开发者指南
- c中的几个存储区
- Android 微信分享信息
- 关于使用iptables对url的重定向
- V4L2编程步骤
- android 开发视频播放器API----Vitamio API for Android: VideoView
- 注册页实例
- 和大神们学习每天一题(leetcode)-Remove Duplicates from Sorted Array
- Java与C++的区别简记
- JVM垃圾回收之—强软弱虚引用
- Vitamio 4.0 API中的方法改变========changed API for Android
- 第二部分:ORCL12C中PDB数据库的创建和删除