Linux教程
    Debian下,先安装
    apt-get install ipset
    创建ipset的 chnroute IP集
    ipset create chnroute hash:net maxelem 65536
    自动下载更新ipset国内IP路由脚本
    #!/bin/bash
    ipset create chnroute hash:net maxelem 65536
    wget —no-check-certificate -O-‘http://ftp.apnic.net/apnic/stats/apnic/delegated-apnic-latest'| awk -F| ‘/CN|ipv4/ { printf(“%s/%d\n”, $4, 32-log($5)/log(2)) }’>/etc/chnroute.txt
    ipset flush chnroute
    while read ip;do
    ipset add chnroute $ip
    doneipset save chnroute >/etc/chnroute.conf
    保存脚本为chnroute.sh 到/etc目录下,并且赋予执行权限
    chmod +x /etc/chnroute.sh
    添加crontab计划任务,每天执行一次更新。
    crontab -e
    添加
    0 0 * * * /etc/chnroute.sh
    显示chnroute列表
    ipset list chnroute
    iptables限制,只允许ipset的 chnroute IP集内IP连接到7000端口

    1. iptables -A INPUT -m set--match-set chnroute src -p tcp --dport 7000-j ACCEPT
    2. iptables -A INPUT -m set--match-set chnroute src -p udp --dport 7000-j ACCEPT
    3. iptables -A INPUT -p tcp --dport 7000-j DROP
    4. iptables -A INPUT -p udp --dport 7000-j DROP

    7000端口为frps参数的bind_port = 7000,主要限制国外IP连接到此frps主要通讯端口,即可。
    如有疑问或同行交流欢迎加群讨论:利用iptables ipset限制,只允许国内IP连接到frps服务 - 图1 151258054