查看: 2208|回复: 0

[讨论] 树莓派组建单臂路由器

[复制链接]
  • TA的每日心情
    慵懒
    2024-8-28 11:13
  • 签到天数: 17 天

    连续签到: 1 天

    [LV.4]偶尔看看III

    发表于 2019-8-25 20:19:14 | 显示全部楼层 |阅读模式
    分享到:

    目标
    创建一个代理网关,所有通过有线或者无线连接通过该网关上网的设备可以:
    • 根据域名判断是走国内的DNS还是国外的DNS,走国外DNS时,通过SS代理请求,防止DNS污染
    • 根据目标IP地址自动选择线路,国外流量都走SS代理
    准备
    • 一个SS服务器,Linode或者Digital Ocean上5刀/月的服务器就够用了,SS服务器的架设方法请自行百度。
    • 一个运行最新版本Raspbian的树莓派3B+。理论上任何安装Linux并带有线网卡和无线网卡的设备都可以,只是不同的Linux发行版配置会稍有不同。选择树莓派3B+因为其自带有线和无线网卡,官方的Raspbian运行稳定、内核版本高(ipset在低版本内核中很难安装),缺点是网卡不是千兆的。我在KVM虚拟机中运行的Arch和Orange Pi Zero Plus上运行的Armbian上都成功搭建过类似的网关。
    • 一个支持VLAN Tagging(802.1Q)功能的交换机。我用的是必联BL-SG108M,八口千兆,淘宝卖140,价格公道,功能够用。也可以使用一个USB有线网卡配一个普通的交换机,除VLAN之外,其他配置类似,但这种配置就不是单臂路由器了。


    网络拓扑与交换机配置
    1.jpg
    网络拓扑图
    将交换机端口分为两个VLAN,VLAN2和VLAN3(这个设备很诡异,VLAN1不允许删除或修改)。端口1至端口6为VLAN2,端口6至端口8为VLAN3,交换机通过端口1连接家里的路由器,树莓派连接端口6(跨两个VLAN)。此时,空闲的端口2~5为非代理端口,直接走家里的路由器,端口7、8为代理端口,数据会通过树莓派网关进行转发,可以根据需要调整VLAN2与VLAN3的端口数量。
    2.png
    配置网关
    树莓派网关需要运行DNS服务(dnsmasq),代理服务(shadowsocks-libev)及无线AP服务(hostapd)并且需要通过iptables和ipset进行NAT转发。
    系统配置
    更新系统到最新的状态:
    1
    2
    apt update
    apt dist-upgrade -y
    安装需要的软件包:
    1
    apt install -y vim git dnsutils lsof bridge-utils hostapd dnsmasq ipset ntp haveged python-m2crypto shadowsocks-libev
    SS服务
    SS全家桶客户端一共有三个服务:
    • shadowsocks-libev-local:socks5正向代理服务,非代理VLAN中的终端可以通过这个socks5代理上网,配合Proxychains与Switch Omega这类的软件使用。
    • shadowsocks-libev-redir:socks5透明代理服务,所有需要代理的网路流量都会根据iptables规则转发到这个服务的监听端口。
    • shadowsocks-libev-tunnel:本地端口转发工具,这里用于解决dns污染问题。
    DNS服务
    很多的大型网站,在国内外会提供不同的版本,如果我们都用国外的DNS来解析,可能会看到非中国的版本或者被解析到国外的服务器而影响浏览速度。所以需要使用一个列表来指定所有的国内网站走国内的DNS。
    树莓派3B+的无线网卡支持2.4G与5G模式,这里使用的是2.4G模式,以确保最好的兼容性(hw_mode=g),无线网络的名称为SS,密码为ssproxy1234,可以根据需要自行修改,另外也要注意频段最好避开家里路由器的频段,这里的频段是7(channel=7)。

    总结
    全部配置完成后,重启树莓派,终端通过网线连接交换机的7、8口,或者连接名称为SS的无线网络,都可以自动的代理上网了。





    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    手机版|小黑屋|与非网

    GMT+8, 2024-11-26 14:48 , Processed in 0.115648 second(s), 16 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.