如何把一个树莓派改造成软路由 - V2EX
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
ToBeHacker
V2EX    Linux

如何把一个树莓派改造成软路由

  •  
  •   ToBeHacker Feb 5, 2020 24074 views
    This topic created in 2294 days ago, the information mentioned may be changed or developed.
    目前有一个树莓派跑,用什么办法能将其改造成软路由么?通过 tun/tap 获取网卡流量可以实现么?
    36 replies    2021-04-12 20:38:32 +08:00
    HTSdTt3WygdgQQGe
        1
    HTSdTt3WygdgQQGe  
       Feb 5, 2020 via Android   10
    简单点,你把树莓派邮给我,我邮给你一个路由或者 n1
    WeaPoon
        2
    WeaPoon  
       Feb 5, 2020
    @q409640976 #1 666
    renothing
        3
    renothing  
       Feb 5, 2020   1
    直接装个 openwrt 啊,有对应发行版。
    或者复杂点,如果你的 pi 要多用途,那先装个 docker,然后在在 docker 上跑个裸的 openwrt 容器也可以。
    Maboroshii
        4
    Maboroshii  
       Feb 5, 020 via Android
    @renothing 路由应该处理的是 IP 层的网络包呀,docker 也可以吗?
    qqxx520
        5
    qqxx520  
       Feb 5, 2020 via iPhone
    搜索双网卡和 iptables
    Stain5
        6
    Stain5  
       Feb 5, 2020
    软路由是指 x86 构造的路由
    树莓派是 arm 的 主频低 总线带宽小 NAT 性能很
    花 100 快买个 new wifi d2 不好吗
    vk42
        7
    vk42  
       Feb 5, 2020   1
    @Stain5 软路由泛指用通用计算平台搭的路由器,和什么架构没关系,如果一般用户对带宽和要求没那么高 pi 够用了,而且直接自带 wifi 不用加无线网卡了
    missdeer
        8
    missdeer  
       Feb 5, 2020
    要有 2 块网卡,1 块 WAN,另 1 块 LAN。
    简单点的装 OpenWRT。
    稍微折腾点的装个普通 Linux 发行版比如 Raspbian,打开 ip forward,一边 pppoe 拨号或 dhcp client 自动获取 ip,另一边开一个 dhcp server,基本就搞定了。
    kennylam777
        9
    kennylam777  
       Feb 5, 2020
    OpenWRT @ docker +1

    RasPi 只跑 OpenWRT 太浪,而 OpenWRT 的路由器功能比成熟,但 package management 比不上一般 distro
    kennylam777
        10
    kennylam777  
       Feb 5, 2020
    @Stain5 MT7621A 的 MIPS 32 比老的 RasPi 2 更弱吧......
    turi
        11
    turi  
       Feb 5, 2020
    第一个问题没玩过,
    第二个肯定可以,但是拿出来之后,你就要对原始 ip 数据进行解析、处理了。
        12
    br00k  
       Feb 5, 2020
    树莓派适合做旁路由。NAT 性能太弱了。
    Stain5
        13
    Stain5  
       Feb 5, 2020 via Android
    @kennylam777 软件支持多 还有硬件加速
    qwqVictor
        14
    qwqVictor  
       Feb 5, 2020 via iPhone
    单网口做路由器可以,但你得有一个支持 VLAN 的交换机。我在 N1 上用 debian 搭过,有些麻烦。
    kennylam777
        15
    kennylam777  
       Feb 5, 2020
    @Stain5 OpenWRT 的 toolchain 和 Debian-based 的 distro 比件支持多? 不吧。

    有 hwnat 在 OpenWRT/Padavan/LEDE 能定?

    要用 tun/tap 的不外是要跑加密, CPU 算力上 RasPi 比 MT7621A 太多
    dndx
        16
    dndx  
       Feb 5, 2020
    @kennylam777 树莓派哪来的 HWNAT。。。不是想不想是想也没有
    bghtyu
        17
    bghtyu  
       Feb 5, 2020 via Android
    我用树莓派做旁路由,装 OpenWRT,挺好用的,配置也简单,用来科学上网
    z5n0w
        18
    z5n0w  
       Feb 5, 2020
    用 raspian 的话
    多买个 vlan 的交换机
    在树莓派上设置好拨号、dhcp、ap 就行了
    就是自己写 iptables 规则比较烦
    kennylam777
        19
    kennylam777  
       Feb 5, 2020 via Android
    我 RasPi 有 HWNAT 吧,但第 4 代的 GbE 口跑,直接用 CPU 跑 NAT 也跑,也比 MTK HWNAT 定。
    lenjeans
        20
    lenjeans  
       Feb 5, 2020
    openwrt 可以用 但是得想办法装另外一个网卡,之前我用的 是 usb 网卡
    geekvcn
        21
    geekvcn  
       Feb 5, 2020 via iPhone
    @kennylam777 你可能对 mt7621at 有什么误解,mt7621at HWNAT 下 64k 可以跑 100w pps,还是在 pppoe 下,因为也带 pppoe 硬件加速,不像博通很多 pppoe 下硬件加速不完整,树莓派这种垃圾超冒烟都打不过 mt7621at,但是比通用计算 mt7621 也根本没法和树莓派打,各有所长
    renothing
        22
    renothing  
       Feb 5, 2020
    @Maboroshii 你把 docker 跑 macvlan 模式或者直接 host 模式都行。路由处理和 docker 无关。docker 只起个环境隔离作用。
    Lazaru5
        23
    Lazaru5  
       Feb 5, 2020
    LokiSharp
        24
    LokiSharp  
       Feb 5, 2020 via iPhone
    树莓派的性能可能还没电信送的光猫高。。。
    oIMOo
        25
    oIMOo  
       Feb 5, 2020
    我现在树莓派就开着就为了跑一些小脚本(抓取 API 然后同步到日历这种)
    之前做过 AirPlay,延迟太高且不稳定放弃了……
    之前做过 Spotify,有了 Amazon Echo 之后关掉了……
    之前做过 文件储存,还是 Dropbox 更方便,也关掉了……
    jiangbingo
        26
    jiangbingo  
       Feb 5, 2020
    讲真,我之前从事过四年嵌入式,对各位提到的只有粗浅的概念,各位的这些知识储备是工作中获取的还是主动学习的?
    ztcaoll222
        27
    ztcaoll222  
       Feb 5, 2020
    树莓派的性能太低了
    KnightYoung
        28
    KnightYoung  
       Feb 6, 2020
    hyz0805
        29
    hyz0805  
       Feb 6, 2020
    性能够用吗
    kerro1990
        30
    kerro1990  
       Feb 6, 2020
    树莓派性能太弱不适合
    LEXUGE
        31
    LEXUGE  
       Feb 6, 2020
    @kerro1990 谁说不适合的,轻松跑满 200 Mbps CN2...
    LEXUGE
        32
    LEXUGE  
       Feb 6, 2020   1
    我搭建的方案:
    树莓派 3B+ OpenWrt,接网线 PPPoE 拨号,作为 WAN。
    然后自带无线作为 LAN
    无线信号不够的话就用别的路由器做 Wi-Fi 中继。

    配置的时候先用网线连接树莓派到电脑,LuCI 开启 Wi-Fi 之后,电脑连接 Wi-Fi,再拔掉网线。这个时候电脑就在 LAN 里了,同时 Raspberry Pi 的网口也可以空出来了

    如果可以原来的路由可以改 Gateway 的话就是旁路由方案
    yigecook
        33
    yigecook  
       May 8, 2020
    树莓派 4 性能不弱呀
    findex
        34
    findex  
       Jun 26, 2020
    @LEXUGE 树莓派就缺一个 rj45 千兆口了。可惜应该一直只有一个usb3 的网口可能性能会好一点吧。
    Salt3dFish
        35
    Salt3dFish  
       Mar 19, 2021
    @LEXUGE 大佬我的 3b 怎么连不上网啊,wan 口设置的 pppoe 但是没有数据传输
    用的是 lede
    LEXUGE
        36
    LEXUGE  
       Apr 12, 2021
    @Salt3dFish 确认拨号没有问题建议用 OpenWrt 原版尝试一下
    About     Help     Advertise     Blog     API     FAQ     Solana     921 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 99ms UTC 18:58 PVG 02:58 LAX 11:58 JFK 14:58
    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