Esxi安装Openwrt配置旁路由
esxi配置旁路由过程记录。
下载Openwrt固件
在谷歌上搜索了一下,国内用的人较多且更新频繁的Openwrt固件仓库。
https://github.com/sirpdboy/openwrt
但是提供的镜像格式是img,并不是Esxi直接支持的ISO,所以下载后需要先自行转换一下。
qemu-img转换镜像格式
使用qemu-img工具将img转换出的vmdk虚拟磁盘,在VMware Workstation中可以直接使用,但是在ESXi中无法使用,需要使用vmkfstools再次转换成ESXi可以识别的格式。
这里我先将img.gz文件下载到Linux系统中转换。
yum -y install qemu-img qemu-img convert -f raw openwrt.img -O vmdk openwrt.vmdk
然后上传到esxi。

使用vmkfstools再次转换(第二次转换),用ssh连接到esxi的控制操作。

[root@localhost:~] cd /vmfs/volumes/6761a660-50355896-6a78-ac1f6be82bbe [root@localhost:/vmfs/volumes/6761a660-50355896-6a78-ac1f6be82bbe] ls ISO clickhouse gitlab kali openwrt win10-test [root@localhost:/vmfs/volumes/6761a660-50355896-6a78-ac1f6be82bbe] cd ISO/ [root@localhost:/vmfs/volumes/6761a660-50355896-6a78-ac1f6be82bbe/ISO] vmkfstools -i openwrt.vmdk -d thin openwrt_lan.vmdk Destination disk format: VMFS thin-provisioned Cloning disk 'openwrt.vmdk'... Clone: 100% done. [root@localhost:/vmfs/volumes/6761a660-50355896-6a78-ac1f6be82bbe/ISO] ls openwrt* openwrt.vmdk openwrt_lan-flat.vmdk openwrt_lan.vmdk
转换后有两个文件,一个是openwrt_lan.vmdk
,此时它实际上只是一个配置文件,如果感兴趣查看一下里面的参数;另一个是openwrt_lan-flat.vmdk
,这个才是虚拟磁盘文件。
创建Openwrt虚拟机

CPU和内存分别都选1G就够用了。然后启动

然后其他都可以在Openwrt的web界面中去配置了。
Openwrt配置旁路由
配置旁路由的核心就一句话: 修改网关地址。
家用路由器设置的默认网关地址就是家用路由器自己的ip地址,配置旁路由的核心步骤就是将设备的默认网关地址改为 Openwrt的IP地址。
流量的流向是:
终端设备 -> Openwrt -> 家用路由器
修改网卡配置


Openwrt的网关地址还是路由器。

因为我们只是用Openwrt作为旁路由,所以dhcp的功能还是让主路由来负责。
修改防火墙设置

ip动态伪装一定要打开。
开启SmartDNS
使用Openwrt为的是局域网设备免配置科学上网。一定要开启SmartDNS,对于国外的域名用国内的DNS服务器是无法解析访问的。

启用后拉到最下面保存应用即可。
配置Openclash

然后在运行状态中启用。

点击Dashboard控制面板可以手动选择节点。

手动修改设备的网关地址
对于Macos,在WiFi中点击当前WiFi详细信息手动配置ip。

然后配置DNS服务器。

客户端上不用配置代理也可以科学上网了。

修改主路由dhcp将网关指向Openwrt
这种方式相当于不用每次在设备上手动去修改网关地址,我看网上的视频别人的路由器是有这个功能的,但是我工位上的华为路由器不支持这个功能,那就算了。
我们可以用命令一键修改,其中的ip改为你的Openwrt的ip。
# 一键修改网关和DNS,支持centos和ubuntu sudo ip route del default && sudo ip route add default via 192.168.3.199 && echo "nameserver 192.168.3.199" | sudo tee /etc/resolv.conf
如果想要确认修改是否成功,可以执行:
# 查看网关 ip route show | grep default # 查看DNS cat /etc/resolv.conf
注意:这个修改是临时的,重启后会恢复。但是这种方式增加了容错性,即便Openwrt挂掉了,也不会造成整个网络不可用。如果出现错误,可以通过重启网络服务恢复:
# CentOS sudo systemctl restart network # Ubuntu sudo systemctl restart NetworkManager
总结
配置好旁路由后,就可以一劳永逸了,不用每次都在不同机器上配置科学上网代理,什么docker、yum、apt、npm通通不用管了。极大提升工作效率。
赞赏微信赞赏
支付宝赞赏
发表评论