iptables應(yīng)用之動(dòng)態(tài)DNS(2)_Windows教程
假設(shè)監(jiān)聽在標(biāo)準(zhǔn)端口的BIND服務(wù)器為非CERNET客戶提供DNS解析,監(jiān)聽在54端口的BIND服務(wù)器為CERNET服務(wù)器提供DNS解析,我們可以建立如下的規(guī)則腳本:
#!/bin/bash
#打開端口轉(zhuǎn)發(fā)
echo 1 > /proc/sys/net/ipv4/ip_forward
#加載相關(guān)的內(nèi)核模塊
/sbin/modprobe iptable_filter
/sbin/modprobe ip_tables
/sbin/modprobe iptables_nat
#刷新所有規(guī)則
/sbin/iptables -t nat -F
#加入來自CERNET的DNS請(qǐng)求轉(zhuǎn)發(fā)規(guī)則,將其轉(zhuǎn)發(fā)到本地54端口,CERNET地址列表可從www.nic.edu.cn/RS/ipstat/獲得
/sbin/iptables -t nat -A PREROUTING -p udp -s 163.105.0.0/16 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p tcp -s 163.105.0.0/16 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p udp -s 166.111.0.0/16 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p tcp -s 166.111.0.0/16 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p udp -s 202.4.128.0/19 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p tcp -s 202.4.128.0/19 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p udp -s 202.112.0.0/15 --dport 53 -i eth0 -j REDIRECT 54
/sbin/iptables -t nat -A PREROUTING -p tcp -s 202.112.0.0/15 --dport 53 -i eth0 -j REDIRECT 54
…
#將返回給CERNET DNS客戶數(shù)據(jù)包的源端口(54端口)偽裝成53端口
/sbin/iptables -t nat -A POSTROUTING -p udp --sport 54 -o eth0 -j SNAT --to 211.163.76.1:53
/sbin/iptables -t nat -A POSTROUTING -p tcp --sport 54 -o eth0 -j SNAT --to 211.163.76.1:53
教育網(wǎng)網(wǎng)的朋友可以從這里下載該腳本,將腳本中的DNS_IP及CNET_PORT參數(shù)改成你自己的Dns服務(wù)器地址及監(jiān)聽端口即可。
步驟四、運(yùn)行動(dòng)態(tài)DNS
配置完成后我們啟動(dòng)DNS服務(wù)器,并且運(yùn)行相應(yīng)的規(guī)則腳本,我們的動(dòng)態(tài)Dns服務(wù)器就可以正常工作了。
- 相關(guān)鏈接:
- 教程說明:
Windows教程-iptables應(yīng)用之動(dòng)態(tài)DNS(2)
。