Chiphell - 分享与交流用户体验

 找回密码
 加入我们
搜索
      
查看: 14206|回复: 23

[网络] pfsense 软路由 多拨,分流教程

[复制链接]
发表于 2019-10-31 13:38 | 显示全部楼层 |阅读模式
本帖最后由 magiclu 于 2019-11-13 16:20 编辑

pfsense 软路由 多拨,分流教程

这个系统我才用了几天,肯定是能用的,但是专业的功能太多了,很多功能我都没有试过,这个教程只是基本的设置教程,只保证能正常使用,甚至教程里也可能有很多错的地方,不是用的正确的姿势

目标
1 bt 速度叠加
2 开网页,玩游戏什么的,使用的是同一个ip,不存在有的系统多播后的各种奇葩问题

要求
1 我这里是不需要并发多播,就是说我可以多个路由器,同时在不同时间慢慢拨号,如果需要并发多播的可能可以通过重启虚拟机的操作来拨号,这个系统不是专门多播的
2 我这里多播不限速,你那里限速我也没办法,如果限速就别多播了
3 公网ip,如果你拨号后同时有内网ip和公网ip,打个电话和客服聊一下天即可解决,之后就不会出现内网ip了
4 如果你是移动+电信+联通这种,理论上也没问题

缺点
1 需要一定的防火墙设置基础,pfsense是偏向防火墙的路由器,实在不会照着抄即可
2 ddns可能有难度,但也是支持的,而且可以每个wan口都有一个ddns,我暂时没搞,我用的是华硕无线路由器里自带的,因为我这里可以多个路由器同时拨号
3 这个系统比较占硬盘,目前占了3g
4 pfsense的设置网页反应比较迟钝
5 如果拨号后得到的ip在同一个上级路由器下(网关),重复的线路是处于暂停中的,貌似只能手动重新拨号,不过影响不大,只会影响bt,不影响别的,也有可能哪里可以设置,我没找到
6 cpu占用率貌似比别的路由系统稍微高一点
7 upnp有点问题
xbox之类的需要open nat的单个正常,多个还需要更多的设置,很麻烦,但是有图文攻略
参考
https://forum.netgate.com/topic/ ... er-without-upnp-dmz
我就简单的设置了一下,用多个win10测试了,一个是open nat,但是别的是moderate,我这几天用不到,没有亲自用游戏测试,不过上面的图文攻略里貌似没问题
如果需要时,我可以直接用另外一个路由器来解决这个问题
8 这个系统的中文教程非常少,好在我英文很给力,很多中文的帖子都说无法多播,几乎没人高兴测试
9 dhcp设置绑定ip有点麻烦,但也能忍

用pfsense是因为我这里pfsense的bt速度而比openwrt快一点,bt速度和爱快差不多(但是不稳定,有时很快,有时只有一根线的速度稍微多一点,我猜99%是upnp的问题),但是pfsense是免费开源的,比免费但是不开源的国产软件放心很多,这个系统国外的用户挺多的,也是企业级的系统,linus cat tips 也用的这个软路由哦

我的网络结构参考我之前写的hyperv all in one教程,只是把openwrt#1换成了pfsense
https://www.chiphell.com/thread-2142173-1-1.html
我用的是hyperv虚拟机,需要几个网卡就把网卡添加几次即可,和我上一个教程一样,如果用的别的虚拟化,应该同理

这个系统的多播原理我不清楚,貌似默认是同一个mac拨号,我这里能播上,你如果拨不上就多添加几个虚拟网卡即可,虽然界面里可以设置拨号时使用的mac,我设置了mac反而拨不上了.................你可以试试
也有可能是类似ros的vrrp多播

虚拟机的下载安装过程没有难度,和我之前的那个教程差不多,同样是要添加2次 外部 虚拟网卡,gen2虚拟机只要不是windows就要关闭secure boot,内存分配1g,硬盘10-20g(目前我装的实际占硬盘3g)
下载地址   https://www.pfsense.org/download/
安装教程   https://docs.netgate.com/pfsense ... alling-pfsense.html
hyperv的详细图文功略  https://docs.netgate.com/pfsense ... e-with-hyper-v.html
官方也有esxi和proxmox的详细图文功略,如果用这两个虚拟化的应该不是小白了,能自己搞定的
hyperv的网络方面的设置简单很多,刚好够用,这个教程也不需要学习vlan什么高端的东西,单网卡就够了


这个教程是用的英文界面,如果需要改到中文界面,我后面也有个截图
Untitled picture.png


这个是pppoe拨号的界面的一部分,居然宽带密码要复制粘贴2次,我上面说的可以修改mac的那一行我高亮了,不过貌似我修改了反而无法拨号了
Untitled picture1.png

这个图里的hn0,hn2是hyperv虚拟网卡的编号,比如这里wan5是用的别的网卡,不过单个虚拟的wan网卡也没问题

所有的图里的写了vlan的地方都不需要管,不在这个教程的范围内,如果有需要抄这里https://schimpie.net/2017/03/03/pfsense-vlan-with-hyper-v/
Untitled picture2.png

写这个教程的时候用的是第一个图,后来换成了第二个图,用多个虚拟网卡,看一下效果是否有区别,不过除了内存占用变高之外,暂时没发现区别,如果一个虚拟网卡拨号有问题可以试一下,我又改回去了
Untitled picture3.png
添加wan之前要选好网卡,不然后面的界面貌似无法选择修改,只能删了重来edit 11/13/2019      上面写错了,可以在  Interfaces/ppps 里面改pppoe的网卡

hyperv gen2的虚拟机貌似可以无限添加网卡,gen1的貌似是限制8个,不过pfsense是支持gen2的,没问题,需要多少就加多少虚拟网卡即可
记得勾选 mac address spoofing
Untitled picture4.png Untitled picture5.png



如果看到wan都显示有ip了就已经拨上号了,如果拨不上号(含重启虚拟机后),这个教程就不需要看了
但是此时网速还是无法叠加的,还要设置负载均衡
Untitled picture6.png


找到这个地方,照我的图上,把多个wan添加gateway group,上面一个多个wan在不同的tier,就是说tier1的挂掉了,会用tier2的,不同时使用
下面一个,多个wan在同一个tier就是说多个wan一起用
我把这两个gateway group分别取名为 oneWan  MultiWan,下面会用到的

如果你是移动+电信+联通这种在oneWan里 把最好的线路做tier1即可,比如电信作为tier1,电信挂了才会走下一个运营商的线路
MultiWan里都是tier1即可
这个系统的负载均衡是connection-based round-robin load balancing with the tier priorities


还有更多的姿势,比如水平高了,可设置bt只走wan2,wan3,这样wan就很通畅了,qos什么的完全用不到,这个有难度,因为还和wan的upnp有冲突,还在测试中,理论上没问题,以后再补充
Untitled picture7.png



把default gateway ipv4设置成上面一个图里的oneWan,不改貌似问题也不大



见下图
到这个界面里看一下,这个系统有个问题,我暂时还没研究怎么处理,如果拨号得到的ip不在同一个上级路由器里,那么都会是绿色的online
如果得到的ip在同一个上级路由器里,会像下面的的图一样,出现pending,pending的线路是暂停中的,过一会下面的网速跑分,可以证明这一点,是不会叠加网速的,
wan和wan3得到的ip是在同一个上级路由器里的(gateway),如果你播的次数够多,这个问题影响不大
也就是说wan和wan2的网速还是能叠加的
我上图的设置的tier,wan用的tier1,wan2用的tier2,wan3用的tier3也是为了这个顺序,可能也没影响,还没测试
Untitled picture8.png


--------------------------------------------------------------------

现在需要去防火墙里设置lan的流量是怎么跑的
Untitled picture9.png Untitled picture10.png



这两个图是我qbittorrent里端口的设置,把端口靠在一起,路由器里的防火墙可以少一个规则,理论上可以提高性能,别的软件自己研究

Untitled picture11.png


灰色的都是未激活的规则
这些彩色的线默认是没有的,我加上去,是为了写教程简单一点
先看黄色的2条线之间的,应该是默认就有的,先把ipv4那里的gateway修改成MultiWan(截图难度有点高.一张图里截不下,很多选项找不到就点一下蓝色的display advanced,会显示出更多的选项),然后去speedtest.net跑一下分(多线模式),比如200/30的宽带播3次因该能跑到600/90
如果你是100m的宽带,光猫是百兆的接口,再怎么搞也是百兆的网速,顶多加一点上传速度

然后把刚设置成MultiWan的地方改成oneWan,或wan1或wan2或wan3,再去speedtest.net跑一下分,这时你的网速应该是没有多播时的速度,到测ip的网站去测一下ip,ip是你选的wan的ip
有时我还遇到wan1,wan2显示online,wan3 pending,然后默认设置为oneWan为网关的lan的流量都走wan2,bt走wan2和wan3的,这个系统我真的搞不懂怎么设置,但是只有一个运营商时问题不大,如果是多个运营商可能就麻烦了,可能设置为wan1即可

绿色的2条线之间的是加入bt的端口,让bt走多播,bt的端口可以自己设置的,这个规则我还不是很清楚到底是否需要,因为没有bt也能下载(后面有个设置端口转发的教程,可能端口转发优先级更高)
这样设置有个缺点,可能存在误伤,但是一般别的软件都不走这些数字很大的端口的,理论上没问题,如果无法接受,可以设置qbittorrent走另外一个网卡,(hyperv还可以通过命令给win10主机再加几个虚拟网卡,单物理网卡没问题的)

蓝色的2条线之间是给另一个ip完全使用多播,这个设备或虚拟机只能用来下载,不然可能导致各种多播产生的奇葩现象,这个方案可以解决绿色的2条线中的方案可能产生的奇葩现象

红色的线上面的是默认就有的,无法修改的,防止你乱改规则打不开路由器的网页

规则是从上到下的顺序走的,别的我没提到的规则基本都是测试用的,不需要管,可以通过拖动改变顺序

下面的这2个图是设置ip为192.168.99.222的电脑的55999到59000端口的规则
Untitled picture12.png Untitled picture13.png



-----------------------------------------------------------------------------------------

下面的一个图是设置端口转发
Untitled picture14.png


如果遇到了speedtest.net的跑分很高,但是bt速度很慢,可能还需要进行端口转发,比如这个张图把55999端口暴漏到公网,多个wan就要多设置几次,最右边action里有3个图标,设置好了一个之后,点中间的图标(2个方框的那个),就是基于已经写好的规则上再修改一下即可
如果需要设置在家外面 访问家里的服务器什么的,也是这里设置,可以多个wan分别设置,每个wan都可以设置ddns(在Services/Dynamic DNS里设置,不过可能对国内的支持不好),一般设置一个wan就够了,我很懒,用的华硕的无线路由器里自带的,没有设置


-----------------------------------------------------------------------------
下面是upnp的设置,
缺点是只能选一个wan,  不过lan可以选多个
Untitled picture15.png

还可以手动添加upnp规则 比如 这是上面说的bt只走wan2,wan3,而不走wan1可能要用到的,还在测试中(bt的原理比较复杂,缓存很久,就是说要测试很久),不确定对不对

Untitled picture16.png
可以到这个页面看一下upnp的状态
Untitled picture17.png
先创建aliases 把需要用到upnp的ip添加到这里(含需要跑bt的,全加了也行)
Untitled picture18.png
nat mode选到第二个,在mapping里把上面创的aliases加进去,勾选static port

到   System/Advanced/Firewall & NAT
Untitled picture19.png
改为pure nat,勾选上面的截图的最下面一个选项
然后重置防火墙,不会的可以重启虚拟机

上面的一些upnp方面的设置,我抄的是下面的链接里的视频攻略,稍微简单一点,但是多个设备可能有问题,我的截图看不懂的,能连上互联网的的就看视频攻略吧,链接理论上能防止早晚会来的大河蟹
404公司的最大的视频网站.com/watch?v=whGPRC9rQYw

如果多个设备玩某些需要p2p的游戏还有问题,自己研究吧
我就懒得研究了,路由器多,都能拨号,可以用别的路由器做网关,这是不影响设备在同一个局域网的,比如smb完全正常
---------------------------------------------------------
还有个彩蛋,设置好多播之后traceroute检测不到我的路由器了(192.168.99.1)....................,没设置多播前是可以检测到的(也有可能和我设置了vlan有关),具体原因不明,懒得研究
Untitled picture20.png

这个截图的最下面的选项可以把网页界面设置成chinese,没仔细看是否是机翻的,就算翻译质量很棒,这个系统也不适合用中文,不然搜个教程都搜不到
还可以设置tls的dns来防止dns污染,不过我用不到,也没测试,已经有更强大的adguard home了
Untitled picture21.png Untitled picture22.png Untitled picture23.png




bt的速度不是很稳,但是够用了,有时多个wan都能跑起来,有时有的不跑
Untitled picture24.png

cpu占用率显示不准,实际上大约ryzen 3600的5%

如果有设置不对的地方欢迎指出,这个系统我也没用几天







评分

参与人数 2邪恶指数 +15 收起 理由
houyuzhou + 10
xinyixy2008 + 5 666

查看全部评分

 楼主| 发表于 2019-10-31 13:38 | 显示全部楼层
本帖最后由 magiclu 于 2020-6-4 17:07 编辑

更新ddns的设置方法
不会用freenom和cloudflare的可以抄这个人的教程
https://zhujitips.com/328

免费域名运气好是可以免费续的,除非你的网站或名字很火,一般不会出事为了避免你网站很火,你局域网内使用时,需要经行dns劫持,我用的自己建的adguard home,有这个功能,反正基本所有的路由器系统都有这个功能,
比如劫持到局域网的ip,比如192.168.99.99,这样就全在局域网内访问了,流量不用经过路由器

下面这个图里面,用户名是你cloudflare的邮箱,密码是cloudflare api key,运营商强行更换ip后貌似很快就更新好了,不需要任何额外的设置
Untitled picture25.png




edit 6/4/2020
之前就写好了,万一有人搜到了可以看一下
更新单网卡的垃圾硬件的教程,可以实现低成本的热备
https://www.chiphell.com/thread-2221918-1-1.html






发表于 2019-10-31 15:27 | 显示全部楼层
好复杂,容我细细研究下。
发表于 2019-10-31 15:40 | 显示全部楼层
留名备份,不过北京联通好像多播不行
发表于 2019-10-31 16:39 | 显示全部楼层
抱歉,先声明一下,折腾过各种路由/虚拟机最后回到单个router的某人发下牢骚。
折腾这个不如翻点资料用openwrt扔了luci直接改配置了。这些很强大的东西只用某些少数功能的时候,很可能在某些地方埋坑。有时间把文档全部翻过知道自己该干嘛的话,就当上年纪大叔的絮絮叨吧。
发表于 2019-10-31 16:47 | 显示全部楼层
我用过一年多pfsense,安装的时候很是折腾了一下,它的wan和lan好像是反的,UPNP倒是没有什么难度,直接开了就可以了
多拨没有找到什么地方可以设置,后来我多wan就装爱快了
 楼主| 发表于 2019-10-31 16:51 | 显示全部楼层
上火的小M 发表于 2019-10-31 15:40
留名备份,不过北京联通好像多播不行

不行就没必要折腾了,随便搞个不是很渣的无线路由器就够了
 楼主| 发表于 2019-10-31 16:53 | 显示全部楼层
shine360 发表于 2019-10-31 16:47
我用过一年多pfsense,安装的时候很是折腾了一下,它的wan和lan好像是反的,UPNP倒是没有什么难度,直接开 ...

多播就是wan口pppoe多添加几次,没有专门的多播选项,但也能用
爱快确实很给力,但是国产的不开源的免费,有后门什么的
发表于 2019-10-31 17:25 | 显示全部楼层
我也弄了个万兆口软路由,装了个pfsense,500M宽带还是跑得溜,后面准备再试一下opnsense,据说比pf好
https://www.chiphell.com/thread-2149258-1-1.html
发表于 2019-10-31 17:28 | 显示全部楼层
用了几年了 pfsense主要是防火墙功能。。。附带路由而已
 楼主| 发表于 2019-10-31 18:05 | 显示全部楼层
tankren 发表于 2019-10-31 17:28
用了几年了 pfsense主要是防火墙功能。。。附带路由而已

如果要同时用多个路由,设置起来有难度,比如upnp,多重nat什么的我还不会搞

我就用pfsense来负责分流的,用这个系统是因为我openwrt设置vlan时遇到了一些bug,然后搜到了pfsense在hyperv下的vlan教程,就装了试试的,然后用了几天,貌似还不错
发表于 2019-10-31 18:48 | 显示全部楼层
LZ是0513的老乡吗?我电信多播不叠加速度呢
 楼主| 发表于 2019-10-31 19:38 | 显示全部楼层
wshwolf 发表于 2019-10-31 18:48
LZ是0513的老乡吗?我电信多播不叠加速度呢

江苏 南通 如东,可能不同小区域不一样
发表于 2019-11-1 08:43 | 显示全部楼层
magiclu 发表于 2019-10-31 18:05
如果要同时用多个路由,设置起来有难度,比如upnp,多重nat什么的我还不会搞

我就用pfsense来负责分流的,用 ...

pfsense的VLAN配置超傻瓜。
发表于 2019-11-1 08:48 | 显示全部楼层
江阴用户表示多播已经失效了,即使没失效,遇到相同网关的也无奈
发表于 2019-11-1 09:02 来自手机 | 显示全部楼层
应该是多拨而不是多播
 楼主| 发表于 2019-11-1 12:24 | 显示全部楼层
InuYasha 发表于 2019-11-1 09:02
应该是多拨而不是多播

谢谢提醒,发现错字有点多,就修改了一下标题
发表于 2019-11-1 12:29 来自手机 | 显示全部楼层
牛逼,我还没玩明白⊙ω⊙
发表于 2019-11-1 12:44 | 显示全部楼层
我玩PT的,transmission不开限速的话,有热门种子一定会卡得其他人用不了网。
开限速又经常忘记关掉,路由器不管是dd-wrt还是tomato还是openwrt石像鬼,流控都没啥卵用,还会导致没其他人用的时候PT也跑不满。
有点想上pfsense或者爱快试试,保证PT能占满带宽又不影响别人用网,不知道靠谱不。
 楼主| 发表于 2019-11-1 12:57 | 显示全部楼层
helleon 发表于 2019-11-1 12:44
我玩PT的,transmission不开限速的话,有热门种子一定会卡得其他人用不了网。
开限速又经常忘记关掉,路由 ...

理论上,只要你设置后,不用来下载的线路里没什么pt的流量就没事,然后除了下载之外,别的流量都走这个线路,不需要设置qos

我这里就算所有的线路都在跑,玩游戏都没事,没设置qos
发表于 2019-11-1 13:21 | 显示全部楼层
magiclu 发表于 2019-11-1 12:57
理论上,只要你设置后,不用来下载的线路里没什么pt的流量就没事,然后除了下载之外,别的流量都走这个线路, ...

呃,你是多拨,我这不能多拨。
而且如果我能多拨的话,我也希望每条线路都能跑满,贪心的人就这样。。。。
 楼主| 发表于 2019-11-1 13:22 | 显示全部楼层
helleon 发表于 2019-11-1 12:44
我玩PT的,transmission不开限速的话,有热门种子一定会卡得其他人用不了网。
开限速又经常忘记关掉,路由 ...

你试一下,upnp还是wan1,把我上面的MultiWan改成wan2+wan3,不走wan1
貌似upnp还是wan1,不把bt的端口拒绝反而网速快一点(wan1貌似稍微有一点流量,但也很慢),拒绝了虽然是只走wan2+wan3,但是速度好像慢一点

反正bt这个东西挺奇怪的,你自己测试吧,我反正所有线路都在跑,没qos也不卡
爱快确实跟给力,不过国产的免费不开源软件最好还是别用
 楼主| 发表于 2019-11-1 13:30 | 显示全部楼层
helleon 发表于 2019-11-1 13:21
呃,你是多拨,我这不能多拨。
而且如果我能多拨的话,我也希望每条线路都能跑满,贪心的人就这样。。。 ...

那你试一下pfsense的qos,据说也挺给力的,反正不设置多播,装一个虚拟机要不了多久的,也没多少要设置的

在Firewall/Traffic Shaper
这个系统的qos叫做Traffic Shaper
发表于 2019-11-1 14:58 | 显示全部楼层
https://blog.51cto.com/fxn2025/p1

玩pfsense推荐多看看以上链接的帖子
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2021-3-3 07:13 , Processed in 0.015030 second(s), 21 queries , Gzip On, Redis On.

Powered by Discuz! X3.2

© 2007-2021 Chiphell.com All rights reserved.

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