配置国内走电信,国外走移动的策略路由的方法。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JackyBao
V2EX    宽带症候群

配置国内走电信,国外走移动的策略路由的方法。

  •  
  •   JackyBao 2017-01-11 13:34:44 +08:00 15004 次点击
    这是一个创建于 3277 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近一直看到有人在提问国内走电信,国外走移动的策略路由如何配置。
    我这边抛砖引玉一下,也许各位有更好的方法,欢迎赐教。

    当然第一部你需要一个可以刷 openwrt 的路由器,潘多拉的也可以,比如目前流行的各种智能路由器,小米,斐讯, Newifi ,优酷都可以。

    Openwrt 固件可以去官网下载,潘多拉固件的最新版在这里: http://downloads.pandorabox.com.cn/pandorabox-16-10-stable/targets/ralink/mt7620/ 推荐潘多拉吧,对国内热门的智能路由支持比较好,比如狗东免费送的 K2 。

    然后你需要以下软件包:
    ipset -> 用于将国内 IP 段放入一个 ipset ,以便使用 mwan3 做出口分流。
    luci-app-mwan3 -> 用于双线的出口分流

    基本思路:
    进交换机设置,划一个 LAN 出来设为单独的 VLAN ,作第二个 WAN 口用。
    进接口设置,新建一个 WAN 口,物理接口选择上面新建的 VLAN 口。
    进 DNS/DHCP 设置,将 dnsmasq 的上游 DNS 设置为 114.114.114.114 ,选中忽略解析文件。
    获取一份国内 IP 段的列表,将这个列表读如一个 ipset 。
    mwan3 配置很简单,满足国内 ipset 的流量走电信的 wan 口,否则走移动出口。

    完成!
    第 1 条附言    2017-05-18 11:22:39 +08:00
    ==============================
    贴一个 MWAN3 的参考配置文件。
    2 个物理 WAN 分别命名 wan_ct 和 wan_cm,满足 chinalist 这个 ipset 的流量走 wan_ct,其他流量走 wan_cm。

    config interface 'wan_ct'
    option enabled '1'
    list track_ip '114.114.114.114'
    option reliability '1'
    option count '1'
    option timeout '2'
    option interval '5'
    option down '3'
    option up '3'

    config interface 'wan_cm'
    option enabled '1'
    list track_ip '114.114.114.114'
    option reliability '1'
    option count '1'
    option timeout '2'
    option interval '5'
    option down '3'
    option up '3'

    config member 'wan_ct_m1_w1'
    option interface 'wan_ct'

    config member 'wan_cm_m1_w1'
    option interface 'wan_cm'

    config member 'wan_ct_m2_w1'
    option interface 'wan_ct'
    option metric '2'
    option weight '1'

    config member 'wan_cm_m2_w1'
    option interface 'wan_cm'
    option metric '2'
    option weight '1'

    config policy 'ct_main'
    list use_member 'wan_ct_m1_w1'
    list use_member 'wan_cm_m2_w1'
    option last_resort 'unreachable'

    config policy 'cm_main'
    list use_member 'wan_cm_m1_w1'
    list use_member 'wan_ct_m2_w1'
    option last_resort 'unreachable'

    config rule 'china_ip'
    option proto 'all'
    option sticky '0'
    option ipset 'chinalist'
    option use_policy 'ct_main'

    config rule 'default_rule'
    option dest_ip '0.0.0.0/0'
    option proto 'all'
    option sticky '0'
    option use_policy 'cm_main'

    ==============================
    chinalist 可以从这里获取 https://github.com/17mon/china_ip_list
    将下面命令添加到 /etc/rc.local 文件内,开机自动加载 chinalist。

    CHINALIST_FILE=/root/china_ip_list.txt
    ipset -! restore <<-EOF || return 1
    create chinalist hash:net
    $(sed -e "s/^/add chinalist /" ${CHINALIST_FILE:=/dev/null} 2>/dev/null)
    EOF

    ==============================
    此 MWAN3 配置文件支持双线互备。
    在 wan_ct 和 wan_cm 任一不可用时,所有流量都会走另一个 WAN。
    19 条回复    2017-01-15 23:02:08 +08:00
    kozora
        1
    kozora  
       2017-01-11 15:02:16 +08:00
    梅林自带双线路 很方便
    fuxkcsdn
        2
    fuxkcsdn  
       2017-01-11 16:41:55 +08:00
    前几天刚好也想弄个类似的
    我大致想法是这样

    vultr vps 日本节点装 ss 服务端
    移动的宽带装 ss 客户端,专门处理国外请求和翻墙
    电信的宽带专门处理国内,对外开放 ss 服务端口,作为跳板(当前厦门电信还分配外网 ip )
    在路由器上将国外的请求都转到移动的 ss 客户端上(实现在家里的终端透明翻墙)

    外出的时候联通、移动手机就直接连 vps 的 ss 服务端
    电信手机就连家里电信的 ss 服务端口,然后家里电信线路将请求转发给移动(内网转发?),移动端口再转发给日本的 vps

    这样行得通吗??
    JackyBao
        3
    JackyBao  
    OP
       2017-01-11 18:06:30 +08:00 via Android
    @fuxkcsdn 你都有 vps 了,就不用这么复杂了。
    单条电信宽带,直接路由器用 ss 的国内国外分流,然后 vps 和路由器上都装上 kcptun 。
    xfspace
        4
    xfspace  
       2017-01-11 18:23:59 +08:00 via Android
    @fuxkcsdn 两台 VPS 搭 Tunnel 。
    迷之 IP 从 Tunnel 转到外国出
    国内从 VPS 本地出去。
    这样做有风险
    fuxkcsdn
        5
    fuxkcsdn  
       2017-01-11 19:05:09 +08:00
    @JackyBao 电信国际带宽感人,反正用了移动的线路连接 vps 后,再让我用回电信连接同一台 vps ,那我是会砸路由器的
    不过 kcptun 的方案还没测试过,下次回家试试

    @xfspace 原本也是想用国内 vps 当跳板,但想了下,一年的 vps 费用也和我用一年的移动带宽(目前是 20M ,一个月 40 好像)差不多啊,甚至更贵,所以才会想出这方案
    xspoco
        6
    xspoco  
       2017-01-11 19:07:58 +08:00
    mark 学习下 有这需求
    lbp0200
        7
    lbp0200  
       2017-01-11 19:12:30 +08:00
    备案域名直连更方便,现成的白名单
    xfspace
        8
    xfspace  
       2017-01-11 19:13:51 +08:00 via iPad
    @fuxkcsdn 看看你的路由器性能,跑得动 IPSec VPN 也行。路由器(linux)和 VPS 搭 VPN
    JackyBao
        9
    JackyBao  
    OP
       2017-01-11 19:55:12 +08:00 via Android
    @fuxkcsdn 移动线路 kcptun 优化后,一般能到 8Mbps 左右。和 vps 本身的线路质量已经关系不大了。
    JackyBao
        10
    JackyBao  
    OP
       2017-01-11 19:55:56 +08:00 via Android
    @lbp0200 备案域名的列表怎么搞到呢?
    lbp0200
        11
    lbp0200  
       2017-01-11 22:17:22 +08:00 via Android
    @JackyBao 有些网站提供查询,但是查瘫痪了就不好了,需要缓存
    fuxkcsdn
        12
    fuxkcsdn  
       2017-01-11 23:21:06 +08:00
    @xfspace 路由器性能还行,要求不高看 youtube 1080p 不卡就行

    @JackyBao 移动的宽带本身连接 vps 速度就快,应该没必要 kcptun 优化,就看电信优化后速度咋样了
    lan894734188
        13
    lan894734188  
       2017-01-12 00:13:29 +08:00 via Android
    ros 我有路由表 可以找我要
    missdeer
        14
    missdeer  
       2017-01-12 09:10:37 +08:00
    ss 客户端直接绑定出口的 IP 就行了啊,哪那么复杂
    ramthun
        15
    ramthun  
       2017-01-12 13:05:25 +08:00
    @lan894734188 您好,能分享一下 ROS 做策略路由的教程吗?感谢
    lan894734188
        16
    lan894734188  
       2017-01-12 15:53:17 +08:00 via Android
    @ramthun 教程没有 都是标记目标地址走特定路由 很简单的
    ricardo
        17
    ricardo  
       2017-01-15 19:51:55 +08:00
    @missdeer ss-client 如何绑定出口 IP, 我理解添加跑 vps(ss-server)的 ip 到路由表。
    exiaohao
        18
    exiaohao  
       2017-01-15 20:40:06 +08:00
    如果你是 ROS 什么的
    https://github.com/17mon/china_ip_list
    自己写个批处理把 IP 列表导进去,当然这里面也混着移动,可以看情况调一调
    routing mark=CHINA_MAINLAND => 电信
    然后其他地址去移动
    missdeer
        19
    missdeer  
       2017-01-15 23:02:08 +08:00
    @ricardo 对啊,这就是一种做法。或者像 ss libev 版可以指定一个网络接口绑定。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2293 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 21ms UTC 02:09 PVG 10:09 LAX 18:09 JFK 21:09
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86