【虚拟机】使用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(上)

相关推荐
Sheffield2 分钟前
command和shell模块到底区别在哪?
linux·云计算·ansible
历程里程碑14 分钟前
Linux20 : IO
linux·c语言·开发语言·数据结构·c++·算法
郝学胜-神的一滴16 分钟前
深入浅出:使用Linux系统函数构建高性能TCP服务器
linux·服务器·开发语言·网络·c++·tcp/ip·程序人生
承渊政道20 分钟前
Linux系统学习【Linux系统的进度条实现、版本控制器git和调试器gdb介绍】
linux·开发语言·笔记·git·学习·gitee
技术路上的探险家21 分钟前
Ubuntu下Docker与NVIDIA Container Toolkit完整安装教程(含国内源适配)
linux·ubuntu·docker
代码AC不AC25 分钟前
【Linux】深入理解缓冲区
linux·缓冲区·标准错误
胖咕噜的稞达鸭27 分钟前
网络基础:初识TCP/IP协议
网络·网络协议·tcp/ip
Doro再努力29 分钟前
【Linux操作系统12】Git版本控制与GDB调试:从入门到实践
linux·运维·服务器·git·vim
全栈工程师修炼指南40 分钟前
Nginx | stream content 阶段:UDP 协议四层反向代理浅析与实践
运维·网络·网络协议·nginx·udp
Lsir10110_1 小时前
【Linux】进程信号(上半)
linux·运维·服务器