找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 5483|回复: 3

iptables 的 geoip module

[复制链接]
发表于 2013-8-21 00:13 | 显示全部楼层 |阅读模式
本帖最后由 hkal 于 2013-9-9 00:16 编辑

来自:http://www.linksysinfo.org/index.php?threads/country-block-allow-with-iptables.35548/

Geoip 的数据库:
我们要先生成数据库( geoipdb.bin 和 geoipdb.idx)。例如在 Debian 的电脑上:
  1. # 如果 debian 还没有安装需要的工具:
  2. apt-get update
  3. apt-get install build-essential zip
复制代码
开始生成 geoipdb.bin 和 geoipdb.idx:
  1. mkdir -p /usr/src/geoip
  2. cd /usr/src/geoip
  3. wget http://www.maxmind.com/download/geoip/database/GeoIPCountryCSV.zip
  4. unzip GeoIPCountryCSV.zip
  5. wget http://people.netfilter.org/peejix/geoip/tools/csv2bin-20041103.tar.gz
  6. tar zxvf csv2bin-20041103.tar.gz
  7. cd /usr/src/geoip/csv2bin
  8. ./csv2bin ../GeoIPCountryWhois.csv
复制代码
【下面附件是今天的 geoipdb.bin 和 geoipdb.idx,直接用这个就不用自己生产了。不过时间久了这些 IP 可能会有变化,所有最好还是自己每几个月下载 GeoIPCountryCSV.zip 生成一次。




安装到路由:
我们现在把 debian 电脑 /usr/src/geoip/csv2bin 里面的 geoipdb.bin 和 geoipdb.idx 拷贝出来,拷贝到路由的 /opt/etc/geoip/ 目录内(或者其他目录,不过下面的脚步就要相应地修改)。

在路由的 WanUp 脚本 (当WAN联机)加上:
  1. [ ! -d /var/geoip ]&&(mkdir /var/geoip;cp /opt/etc/geoip/geoipdb.* /var/geoip;modprobe xt_geoip;service firewall restart)
复制代码
重启路由或者手动执行上面脚本一次。


应用:
原文中的例子:
  1. iptables -I wanin -p tcp -d 192.168.1.99 --dport 80 -m geoip ! --src-cc JP,US -j DROP
复制代码
除了来自 JP 和 US 的,不容许访问 port 80。


我的应用:
  1. /usr/sbin/iptables -t nat -A PREROUTING ! -d 192.168.0.0/16 -p tcp --dport 80 -m geoip --dst-cc CN -j DNAT --to-destination 192.168.11.1:3128
复制代码
当我不在 CN 的时候,要访问 CN 的网站,自动通过路由上面的 squid。浏览器,手机等不需要任何设定。(xx音乐,xx视频 不会出现类似 “你所在的地区不支持” 等情况)。


其他应用:自己发挥想象。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我的恩山、我的无线 The best wifi forum is right here.
发表于 2017-4-1 13:32 | 显示全部楼层
这个厉害了呀。居然没有人回,我顶一下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2023-8-7 15:07 | 显示全部楼层
运行“mkdir -p /usr/src/geoip”提示只读系统,无法创建文件。。。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2023-8-14 08:42 | 显示全部楼层
谢谢楼主分享!
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

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

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-4-26 20:20

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

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