单线多播也就是一条宽带,拨号多次,使得网速叠加.

单线多播也就是一条宽带,拨号多次,使得网速叠加.

多线多播也就是多条宽带,拨号网速叠加.

多线多播非我等穷人考虑范围.这里主要是单线多播.不过软件包里集成了,有需要可以自己研究.

 

 

江西电信宽带可以多播4次.

我是100M宽带

实际100M下载,20M上传.

多播后,实际测试

大概300M(不到)下载, 40-60M上传.

 

叠加也不是直接做乘法的.也有其他原因.

当然可能我下载测试的源速度有上限问题..

 

安装软件包

 

主要是两个

 

 

luci-app-syncdial

多播luci界面管理,也就是用于多播的脚本.

 

依赖

  • kmod-macvlan

项目地址

https://github.com/monokoo/luci-app-syncdial

 

 

 

luci-app-nwan3

负载均衡 luci界面管理器

负载均衡简单理解,

是多拨后,宽带流量均衡分配的套件.

如果没有负载均衡,那么所有流量可能会单走一条线,多播变得没有意义.

负载均衡会让网络请求分布走不同的(拨号)路线.

 

 

依赖软件包

  • nwan3

 

安装方式

直接opkg install 安装,或者网页管理里面安装.

 



 

 

 

 

luci-app-syncdial安装

 

这个必须要单独拿出来说.

这个软件包1年多没更新了,有些要调整的.

 

安装方式有两种.

 

直接复制文件安装

 

 

 

顾名思义就是,直接克隆项目,拷贝到路由器对应目录.

项目文件(项目files文件内所有文件)和路由器目录路径是一一对应的,不需要怎么管路径的问题.

如果你不想搭建openwrt编译环境.那么可以选这个方式安装.

 

当然你手动复制文件安装,首先得安装依赖包.kmod-macvlan

 

复制后,有三个需要做.

  1. 给可执行文件添加执行权限.

     

    • /bin/genwancfg
    • /bin/pppconnectcheck
    • /etc/init.d/ppp_syncdiag
  2. 修改usr/lib/lua/luci/model/cbi/syncdial.lua

    #第三行
    
    local e="mwan3 status | grep -c \"is online and tracking is active\""
    
    #修改为
    local e="mwan3 status | grep -c \"is online\""​


  3. 添加rpcd

    仅openwrt 19.07之后版本才需要,在19.07之后的版本,没有这个文件会提示:
    LuCi 提示:权限不足,无法读取UCI配置。

    添加一个文件/usr/share/rpcd/acl.d/luci-app-syncdial.json 内容如下:

    {
        "luci-app-syncdial": {
            "description": "syncdial",
            "read": {
                "uci": [
                    "syncdial"
                ]
            },
            "write": {
                "uci": [
                    "syncdial"
                ]
            }
        }
    }
  4. 清理luci缓存
    rm /tmp/luci-indexcache.*

 

 

编译安装包安装

关于如何编译包我前面博文有说明 --> <openwrt编译,添加自制二进制文件/添加包>

将项目克隆到openwrt编译环境的主目录package文件夹中,不过不能直接编译,

要做一些修改.

  1. 添加rpcd

    参考上面rpcd说明新建一个文件,放在files目录.文件内容直接是上面的.

  2. 修改files/usr/lib/lua/luci/model/cbi/syncdial.lua

    参考上面说明即可.


  3. 修改Makefile

    删除依赖,将
    DEPENDS:=+kmod-macvlan +shellsync
    修改成
    DEPENDS:=+kmod-macvlan

    将添加rpcd的文件,在define Package/$(PKG_NAME)/install处理下.

 

关于编译部分简单说明下,前面的博文中有记录.

make menuconfig

#选luci -->  3. Applications -->选择luci-app-syncdial

#保存后直接make编译

 

修改后,如果有需求制作成patch补丁可以参考我相关博文 --> < openwrt编译制作补丁patch文件 >

 

 

 

配置多播

 

所有配置均在luci界面处理,比较容易.

 

先wan口正常拨号

也就是pppoe拨号.不解释.

 

删除原有wan6

网络--接口--wan6删除

 

删除原均衡负载设置

 

网络--负载均衡--接口 

删除除了wan之外所有接口

 

 

配置多播

 

  • 网络--多线多播.
  • 主要设置就是下面几个
  • 启用  勾选
  • 多播类型  单线多播
  • 外网接口  wan
  • 虚拟wan接口数量  4  就是拨号4次.
  • 启用掉线检测   不勾选
  • 使用旧的macvlan创建方式   勾选
  • 启用虚拟接口IPV6  勾选 (看自己需求)

 

参考图,设置完保存到应用.

 

 

 

成功演示图

网络--接口

IPV4拨号成功,IPV6获取成功的情况下会自动创建一个IPV6链接

 

 

网络--负载均衡--接口

 

这里原来wan会自动帮你删除了.新建4个

一切脚本自动处理的.

 

 

 

状态--概览

 

 

 

状态--负载均衡

正常情况这里4个都是在线状态.绿色的.

 

 

 

 

 

 

 

补充说明

 

IPV6

 

拨号成功了,也获取到公网IPV6 (一般国内是240开头的)

但是无法ping通外网公网IPV6也无法访问IPV6网站.

 

测试一个容易记住的公共DNS ip

windows系统

ping 240c::6666

 

非windows系统

ping6 240c::6666

 

 

 

那么就是IPV6防火墙的问题.

 

一劳永逸就是关闭防火墙,虽然不安全,但是方便.

vi /etc/config/firewall 


# 最上面的 defaults节点 
# 添加  disable_ipv6   1   
# 作用就是禁用ipv6防火墙

config defaults
        option disable_ipv6 '1'
        option syn_flood '1'

 

重启防火墙或者重启路由器生效.

 

 

IPV6流量可能没均衡

虽然多播+负载均衡,

但是实际IPV6可能没有被均衡.

因为创建的负载均衡接口只有IPV4来看就能猜到.

不过问题不大,国内IPV6资源还是太少的,主要还是IPV4为主.

 

即使没有被均衡,也不会影响你访问IPV6网站.

 

拨号无法获取IPV6?

 

如果你原来拨号都没有IPV6就是光猫中没有打开设置

光猫(超级管理员)--宽带设置--桥接的那个线路, ip类型选 IPV4 + IPV6接口拨号获取IPV6.

光猫没有破解,也没有超级管理员,让运营商给你开IPV6.

 

然后就是你多播设置中有没有启动IPV6

 

 

拨号不上去?

 

并不是所有宽带都能多播.

一般地区拨号2--4次问题不大,有些宽带只能拨一次.

 

另外据说IPTV可能会占用一条拨号机会.不同地区IPTV实现不完全一致,有些IPTV内部是拨号制度,有些是内网直连,不占用IPTV通道. (我家没用IPTV)

 

 

DNS解析IPV6有问题?

建议将

dnsmasq

换成完全版

dnsmasq-full

并在dnsmasq-full后勾选IPV6支持

 

路由器直接安装可能安装不上去,要强制安装.

最好的办法是编译openwrt一起打包进去.

 

 

参考

https://blog.csdn.net/weixin_33857230/article/details/91814106

https://blog.csdn.net/weixin_43599336/article/details/97265096

https://www.cnblogs.com/biao-wu/p/13275486.html