好物优选点击查看详情 京东购买

暂无内容

群晖单网卡在Docker中安装openwrt旁路由

1.在Docker中拉取sulinggg/openwrt:x86_64的镜像

群晖单网卡在Docker中安装openwrt旁路由插图

2.使用群晖的管理账号SSH登陆群晖系统,使用命令获得root账号权限

login as: xxx xxx@192.168.166.xx's password: xzd@xzdcloud:/$   sudo -i                                            #临时获得root权限 Password:    #输入管理员密码 root@xzdcloud:~ # cd /etc/ssh/ root@xzdcloud: /etc/ssh # chmod 755 sshd_config root@xzdcloud: /etc/ssh # vi sshd_config               #按一下电脑键盘上的I键或者Insert键,屏幕左下角出现“--Insert--”字样,进入可编辑状态 #LoginGraceTime 2m #PermitRootLogin prohibit-password                  #查找这一行,将前面#号去掉,并改为PermitRootLogin yes,随后ESC退出编辑模式,按Shift+冒号,输入wq保存退出 #StrictModes yes #MaxAuthTries 6 #MaxSessions 10 重启主机后再次SSH登陆 xzd@xzdcloud:/$   sudo -i Password: root@xzdcloud:~ # synouser --setpw root King709394#                    #--setpw设置root用户的密码为King70939#

3.使用root账户把网卡设置为混杂模式

root@xzdcloud:~ # ip link set ovs_eth0 promisc on

4.在docker中创建一个名为ipv6-lan的ipv4&ipv6虚拟网卡

root@xzdcloud:~ # docker network create -d macvlan -o parent=ovs_eth0 ipv6-lan --subnet=192.168.166.0/24  --gateway=192.168.166.1 --ipv6 --subnet=240e:330:817:4b00::/56 --gateway=240e:330:817:4b00::1 #subnet设置网段,gateway设置网关

5.创建好网卡以后就可以使用下载好的镜像创建名为openwrt的容器了

root@xzdcloud:~ # docker run -d \ > --restart always \    #自动重启 > --network ipv6-lan \    #设置网卡为刚才创建的虚拟网卡 > --ip 192.168.166.254 \ #openwrt的管理地址 > --privileged \ > --name openwrt \   #设置容器名为openwrt > sulinggg /openwrt :x86_64  /sbin/init #使用镜像前面拉取的镜像 sulinggg/openwrt:x86_64

6.使用docker ps -a查看创建的容器状态,up为正常

root@xzdcloud:~ # docker ps -a CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS              PORTS               NAMES 407f1f3231be        sulinggg /openwrt :x86_64      "/sbin/init" 3 minutes ago       Up 3 minutes                            openwrt 3bb6a92ad458        adguard /adguardhome :latest   "/opt/adguardhome/..." 5 days ago          Up 5 days                               adguard-adguardhome1

7.登陆到openwrt容器中修改lan的网络配置

root@xzdcloud:~ # docker exec -it openwrt bash #登陆到创建的容器,openwrt为创建的容器名 bash -5.1 # vi /etc/config/network #修改网络配置 config interface 'loopback' option ifname 'lo' option proto 'static' option ipaddr '127.0.0.1' option netmask '255.0.0.0' config globals 'globals' option packet_steering '1' config interface 'lan' option type 'bridge' option ifname 'eth0' option proto 'static' option netmask '255.255.255.0' option ip6assign '60' option ipaddr 'xxx.xxx.xxx.xxx' #设置为openwrt管理地址 option gateway 'xxx.xxx.xxx.xxx' #设置网关 option broadcast 'xxx.xxx.xxx.xxx' #设置广播地址,可不用这一行 option dns 'xxx.xxx.xxx.xxx' #设置DNS为网关 config interface 'vpn0' option ifname 'tun0' option proto 'none' bash -5.1 # /etc/init.d/network restart #重启网络服务

8.登陆openwrt管理地址,设置网络=》接口=》Lan配置中勾选最下面的“忽略此接口”并保存(新版本已默认勾选)

群晖单网卡在Docker中安装openwrt旁路由插图1

9.把电脑(不是群晖的)的网关和DNS设置为openwrt的管理地址,如果不能上网,需要更改网络=》防火墙=》常规设置中把“转发”的选项改为“接受” 

群晖单网卡在Docker中安装openwrt旁路由插图2

10.如果还不行,再进入网络=》防火墙=》自定义规则中注释规则“iptables -t nat -I POSTROUTING -j MASQUERADE”并添加规则“iptables -I FORWARD -j ACCEPT”“iptables -I INPUT -j ACCEPT”试试

群晖单网卡在Docker中安装openwrt旁路由插图3

 

 

原文链接:https://www.cnblogs.com/ippondo/p/16878986.html

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享