群晖DSM7+正常,实测DSM6+有问题,dockerHub中的其他镜像也会遇到不同的问题!
本镜像主要用于Docker旁路由,他的优点是比单独的虚拟机更节省资源,配置也非常方便。
1. ssh到群晖,其中admin是用户名,192.168.0.1是群晖IP,回车后输入密码,再次回车
ssh [email protected]
2. 查看内网段下的网口名称,如ovs_eth0
ifconfig
3. 开启混杂模式,ovs_eth0为目标网口名称
ip link set ovs_eth0 promisc on
4. 创建docker的macvlan网络服务,其中macvlan为驱动名称勿改,192.168.0.0/24为子网掩码,192.168.0.252为主路由IP,ovs_eth0为目标网口名称,mac-net为docker网络服务名称
docker network create -d macvlan --subnet=192.168.0.0/24 --gateway=192.168.0.252 -o parent=ovs_eth0 mac-net
5. 创建docker容器,其中OpenClash为容器名称,mac-net为上一步创建的docker网络服务名称,192.168.0.254为旁路由的IP地址,选一个不会被占用的且好记的
run -d
--restart always
--name OpenClash
--privileged
--network mac-net
--ip=192.168.0.254
ziwer/openclash:0.45.103beta
/sbin/init
6. 进入到OpenClash容器内,其中OpenClash为容器名称
docker exec -it OpenClash bash
7. 配置容器的网络IP,其中192.168.0.254为容器的IP,255.255.255.0为子网掩码,192.168.0.252为主路由IP,192.168.0.255是广播地址可不填,
vi /etc/config/network
8. 配置DNS(这里是一个坑,务必要配置,不然无法旁路由内无法通过域名下载包,重要!!)
vi /etc/resolv.conf
9. 重启网络
/etc/init.d/network restart
11. 进入之后,打开网络-接口,编辑br-lan
12. 按照下图示将信息补全、调整
13. 下滑至底部DHCP服务器,勾选忽略此接口以关闭DHCP服务
14. 打开网络-防火墙-基本设置,按下图示进行调整,取消SYN-flood、全部接受、启用lan到wan的IP动态伪装
15. 这个时候,可以去网络-网络诊断-ping测试,正常访问外网说明旁路由ok了
16. 下面开始配置OpenClash的订阅了,打开服务-OpenClash-配置订阅,按下图顺序操作
17. 点击添加后,可以看到下图示,填写配置文件名、订阅地址,按需勾选排除无效节点,保存配置即可。
18. 保存完毕后记得回订阅列表进行更新配置,更新的日志可以到最后的运行日志里查看。
19. 建议进入插件设置,对里面的一些明细部分进行调整,可以把规则订阅全部设置自动更新。
20. 使用:需要梯子的设备打开设置-网络···IPv4地址-配置IP-手动,将设备的IP、子网掩码填入,路由器(网关)填写旁路由的IP,DNS也填写旁路由的IP。