Docker中OpenWrt旁路由安装教程

使用GitHub Actions 云编译OpenWrt - P3TERX ZONE

openwrt是一个功能强大的软路由系统,很多人用它来做旁路由,即做一些流量处理的事情,接下来我们开始安装在Docker中安装OpenWrt吧。

1 Docker镜像选择

无论是在ubuntu、centos还是群晖中安装,都需要先选择一个合适的镜像。目前发现了一个功能完整的Docker镜像,建议使用这个镜像:sulinggg/openwrt

docker pull sulinggg/openwrt:x86_64

2 macvlan配置

需要给OpenWrt分配IP地址,因此需要配置虚拟网卡,在Docker中采用的是macvlan。

需要注意,群晖需要开启openSwitch,这样以后新增虚拟机就不会冲突了,开启openSwitch后,可以看到群晖新建了一个ovs_eth0虚拟网卡,我们在创建macvlan时,对应的实际接口应该是ovs_eth0。

# 开启混杂模式
ip link set  ovs_eth0 promisc on

# 创建一个子网为192.168.10.1/24的虚拟网络,网关是192.168.10.1,名为ovs_lan
docker network create -d macvlan --subnet=192.168.10.1/24 --gateway=192.168.10.1  -o parent=ovs_eth0 ovs_lan

3 Docker实例创建

# 创建名为openwrt1的容器,网络选择ovs_lan,ip指定为192.168.10.2

docker run -d --name openwrt1 --net ovs_lan --privileged --ip 192.168.10.2 sulinggg/openwrt:x86_64 /sbin/init

创建完容器后,需要登录到容器中,修改网络配置

# 登录openwrt1
docker exec -it openwrt1 bash

# 编辑网络
vim /etc/config/network

替换lan网络配置如下:

config interface 'lan'
        option type 'bridge'
        option ifname 'eth0'
        option proto 'static'
        option ipaddr '192.168.10.2'
        option netmask '255.255.255.0'
        option gateway '192.168.10.1'
        option broadcast '192.168.10.255'
        option dns '119.29.29.29'

然后重启

/etc/init.d/network restart

4 OpenWrt配置

接下来需要登录指定的IP:192.168.10.2,默认密码是password。下面的两项调整,调整完后记得保存并应用

LAN接口调整

在openwrt的网络配置中,点击接口选项,修改名为LAN的接口。

物理配置中,取消勾选桥接接口;在最下方的基本配置中,关闭DHCP;最下方的IPV6设置中,路由通告服务DHCPv6 服务NDP 代理全部选择已禁用

防火墙调整

在openwrt的网络配置中,点击防火墙选项。取消勾选启用 SYN-flood 防御入站数据出站数据转发全部选择接受;

5 客户端配置

在完成上述配置后,就可以将你的客户端网关指向新搭建的openwrt了。此时,应该可以正常访问外部网站,也能访问内网任意地址。

6 附录

 
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
下一篇