【虚拟机】使用OpenWrt作为虚拟机集群的软路由(下)

Background

上一篇:【虚拟机】使用VMware安装Openwrt(上)

上一篇文章我们已经安装好了一个Openwrt虚拟机,那么这篇我们将教大家如何进行配来实现我们以下的架构:

设置网卡

我们将为Openwrt的虚拟机添加两张网络适配器

第一张使用桥接模式作为eth0网卡

第二张使用自定义的虚拟网络,选择仅主机模式

为Openwrt配置网络

我们打开宿主机(Windows)的终端,使用ifconfig查看一下网络适配器。

这里我们需要关注一下宿主机在我们刚刚添加的虚拟网络中的IP子网掩码

回到Openwrt的虚拟机中,输入vi /etc/config/network

输入i键进入编辑模式,配置按照图上的内容进行修改,需要单独留意一下红色方框中的ipaddr以及netmask

ipaddr需要设置得与刚刚查询的宿主机ip不一样,比如宿主机ip为192.168.211.1,那么我们设置为192.168.211.2 即可,netmask则和宿主机的的子网掩码一致。

按下esc输入:wq保存

配置转发规则

执行命令sysctl -w net.ipv4.ip_forward=1 确保开启内核转发。

执行以下命令,将Lan口流量通过Wan口进行转发,这样我们连接Openwrt的虚拟机就可以访问网络了。

bash 复制代码
uci set firewall.@zone[1].masq='1'
uci add firewall forwarding
uci set firewall.@forwarding[-1].src='lan'
uci set firewall.@forwarding[-1].dest='wan'
uci commit firewall
/etc/init.d/firewall restart

连接Openwrt

现在我们可以创建另一个Linux虚拟机来连接它,这里我们使用Ubuntu的镜像。考虑到需要作为k8s的节点,所以将IP固定下来会比较合适,而非使用DHCP

这里我们只需要添加一个网络适配器即可,即仅主机模式的VMnet1。

输入sudo vi /etc/netplan/50-cloud-init.yaml 对网络进行设置:

其中addresses设置为本机想要绑定的ip

192.168.211.1分配给了宿主机

192.168.211.2分配给了Openwrt

因此本机的就不能是这两个了,而为了更好区分,我们可以从10开始分配,如果有多个虚拟机想要链接,那么111213依次累加即可。这里我们就分配192.168.211.10给当前机器,/24是因为子网掩码为255.255.255.0,如果你的子网掩码与我的不同,那这个数值也需要修改。

gateway4设置的是网关地址,即Openwrt的地址

yaml 复制代码
    network:
      version: 2
      renderer: networkd
      ethernets:
        ens33:
          dhcp4: no # 关闭DHCP
          addresses:
            - 192.168.211.10/24
          gateway4: 192.168.211.2
          nameservers:
            addresses:
              - 192.168.211.2
              - 8.8.8.8
              - 114.114.114.114

还有别忘了执行这个,应用一下设置。

bash 复制代码
sudo netplan apply

接着我们curl一下www.baidu.com ,就能发现这台机器已经可以正常访问网络了。这样我的Openwrt的配置就算完成了

上一篇:【虚拟机】使用VMware安装Openwrt(上)

相关推荐
邪修king8 小时前
Re: Linux系统篇(十八):进程篇(七): 进程深度解析:从 fork 创建到退出的完整旅程(附写时拷贝原理 + 代码实战)
java·linux·运维
Golden_Chen8 小时前
Win10 WSL安装ubuntu
linux
RobinDevNotes8 小时前
RoCEv2如何扛起大模型训练网络
linux·网络·ai·网络linux
G佳伟9 小时前
宝塔面板打不开且 Bt-Panel 未运行:从 HTTP 502 到 gevent 缺失的完整排查与修复
网络协议·http·php
亿朝亿夕9 小时前
linux基础命令
linux
modelmd9 小时前
Linux SIGTERM 信号
linux
keyipatience9 小时前
IP网络层
服务器·网络·网络协议·ubuntu·http
白狐_7989 小时前
408 计算机网络|HTTP 的 RTT 怎么数:用多道题讲清楚
网络协议·计算机网络·http
Discipline~Hai9 小时前
Linux网络编程03-HTTP协议
linux·运维·服务器·网络·网络协议·http·linux网络编程
Shadow(⊙o⊙)10 小时前
数据链路层ARP协议、NAT路由技术、代理服务器、内网穿透、内网打洞、交换机+集线器
网络·网络协议·tcp/ip