云梦
www.htcp.net

Ubuntu VMware + Openwrt 实现全局上网

介绍

由于 Ubuntu 下各种嗯嗯工具超级难用,所以借助 Openwrt,轻松实现全局上网。
但本人技术辣鸡,笔记本也只有一个无线网卡,只实现了使用 VMWare 这个非免费软件的方式实现桥接,而 KVM 虚拟化方式死活无法桥接无线网卡。
本文章的测试环境是 Ubuntu 16.04,更高版本应该没问题,但 Ubuntu 18.04 目前没法配置 VMWare,等 Ubuntu 18.04 正式版出来以后,应该就可以用了。如果您正使用其它操作系统,请根据自身情况进行配置。

前期准备

1. 安装 VMWare。
2. 下载 koolshare 最新的 Openwrt 镜像。地址:点此访问
3. 一颗平静的心。

笔者网络环境

使用 WLAN 网卡(wlp3s0):
IP 地址:192.168.5.6
掩码:255.255.255.0
网关:192.168.5.1

开始配置

一. 转换镜像格式

将下载好的 Openwrt 镜像转换为 vmdk。
解压文件(本文测试用的是该版本,如 koolshare 推出了新版本,请更改其文件名。

gunzip openwrt-koolshare-mod-v2.15-r6665-4758158-x86-64-combined-squashfs.img.gz
mv openwrt-koolshare-mod-v2.15-r6665-4758158-x86-64-combined-squashfs.img lede.img

需要借助 qemu-img 工具:

sudo apt install qemu-utils
qemu-img convert -f raw -O vmdk lede.img lede.vmdk

二. 配置虚拟网络编辑器

1. 通过 Ubuntu 的搜索框打开「Virtual Network Editor」。

2. 输入您的管理员密码

3. 修改 vmnet1 的网段

将 vmnet1(host-only) 模式的网段改为 192.168.1.0(如果您的 Ubuntu 主机网络所在网段恰好也是 192.168.1.0/24,那请先保证本文章所有图片加载完毕后,断开主机的网络)

将 Subnet IP 修改为:192.168.1.1
将 Subnet mask 修改为:255.255.255.0

三. 配置 Openwrt 虚拟机

1. 新增虚拟机

通过 Ubuntu 的搜索框打开「VMware Workstation」。

通过菜单栏中的「File」->「New virtual machine」菜单,新增一个虚拟机,类型选择「Custom (advanced)」。

在「Guest Operating System Installation」页面中,选择「I will install the operation system later.」,并点「Next」按钮。

在「Select a Guest Operating System」页面中,点「Linux」选项,然后在「Version」下拉菜单中选择「Ubuntu 64-bit」即可,点「Next」按钮继续下一步。

在「Name the Virtual Machine」页面中,根据您的喜好设置虚拟机名称与虚拟机保存路径。

CPU 核心数和内存配置可保持默认 1 核心 1GB RAM。

在「Network Type」页面中,选择网络连接方式为「Use bridged networking」,并点「Next」按钮。

I/O 控制器类型和虚拟磁盘类型可保持默认的 LSI Logic / SCSI。

在「Select a Disk」页面中,点击「Use an existing virtual disk」选项,并点「Next」按钮。

在「Select an Existing Disk」页面中,选择或输入转换好的 lede.vmdk 保存的路径,并点「Next」按钮(建议先将 lede.vmdk 放在虚拟机保存目录下)。

Vmware 将会询问您是否转换虚拟磁盘为更新的格式,您可按照您的需求,选择「Convert」或「Keep Existing Format」均可。

点「Finish」按钮。

将会提示您虚拟机创建完成,点「× Close」按钮关闭页面。

在 Openwrt 虚拟机预览页中,点「Edit virtual machine settings」打开虚拟机的配置页面。

在「Hardware」选项卡中,点「+Add…」按钮。

选择「Network Adapter」新增一个网卡,并点「Finish」按钮。

将新增的网卡「Network Connection」更改为「Host-only: Aprivate network shared with the host」,并点「Save」按钮保存配置。

PS: 如果您不需要光驱,可点选「CD/DVD (SATA)」,并点「删除 (R)」按钮,将光驱删除。

至此整个 Openwrt 虚拟机新增完成。

2. 修改网卡权限(每次 Ubuntu 主机开机都要修改)

sudo chmod a+rw /dev/vmnet0
sudo chmod a+rw /dev/vmnet1

3. 运行 Openwrt

在 Openwrt 虚拟机预览页中,点「Start up this guset operating system」,运行 Openwrt 虚拟机。

在虚拟机启动时,会有一些提示,可点「√ OK」忽略。

将鼠标聚焦在虚拟机中,按回车按钮可显示如下页面,证明 Openwrt 启动完成。

四. 配置 Openwrt

1. 进入 Openwrt 的管理页面

打开 Firefox/Chrome 等浏览器,在地址栏中输入 192.168.1.1 并按回车按钮,即可打开 Openwrt 登录页面。

由 Koolshare 发布的 Openwrt 的默认登录密码为:koolshare

如无意外,登录成功后您将会看到如下页面:

2. 配置网络接口

通过点击右侧栏「网络」->「接口」菜单,打开 Openwrt 接口配置页面。

3. 删除多余接口

默认您将会看到如下页面,通过接口后面的删除按钮,将多余的「WAN」、「WAN6」删除。

4. 修改 br-lan 接口

点「br-lan」后面的「修改」按钮。

切换至「物理设置」选项卡,取消选中除「以太网适配器: “eth1″」之外的所有接口。然后点页面底部的「保存&应用」按钮,保存配置。

修改完毕后,再次点「br-lan」后面的「修改」按钮,在「基本设置」选项卡中,将 IPv4 地址修改为:192.168.11.1

PS: 将网段修改为 192.168.11.0/24 不仅是为了好记,也为了防止可能和主网络冲突。

点页面底部的「保存&应用」按钮,保存配置。

由于我们修改了 br-lan 的 IPv4 地址,这时页面将会失去响应。再次通过 Ubuntu 的搜索框打开「Virtual Network Editor」,将 vmnet1 的子网 IP 地址修改为 192.168.11.1

5. 新增 wan 接口

再次打开浏览器,在地址栏中输入 192.168.11.1 并按回车按钮,输入登录密码进入 Openwrt 管理页面。

通过点击右侧栏「网络」->「接口」菜单,打开 Openwrt 接口配置页面。

在「接口总览」选项卡中,点「添加新接口…」按钮,新增一个新接口。

在「新接口的名称」输入框中,输入 wan,并在「包括以下接口中」选中「以太网适配器: “eth0″」选项,最后按「提交」按钮提交配置。

转至「防火墙设置」选项卡,将创建/分配防火墙区域改为「WAN」,点「保存&应用」按钮,保存配置。

如无意外,Openwrt 虚拟机将会连接上了网络,如下图所示:

Openwrt 网络配置完毕。

6. 修改默认密码

为了安全,请将默认的密码修改为大/小字母+数字+字符的复杂密码。

通过右侧栏菜单中的「系统」-「管理权」,在「主机密码」选项框中进行修改。

7. 插件配置部分:

根据相关法律法规和政策,部分结果未予显示。

五.设置 Ubuntu 的路由

由于 Ubuntu 主机的默认路由不会走虚拟机,所以需要进行如下设置,让 Ubuntu 主机走 Openwrt 虚拟机的网络:

sudo ip route del default via 192.168.5.1
sudo ip route add default via 192.168.11.1 dev vmnet1

六.设置 Ubuntu 的 DNS

由于 Ubuntu 主机默认的配置仍然走国内的污染 DNS 进行查询,所以需要将其修改为 Openwrt 虚拟机的网关:

通过如下命令去掉 resolv.conf 中的所有内容,并添加一行:

sudo echo "nameserver 192.168.11.1" > /etc/resolv.conf

配置完毕。享受 Openwrt 带来的全局网络环境吧。

每次开机需进行的步骤

1. 执行如下命令:

sudo chmod a+rw /dev/vmnet0
sudo chmod a+rw /dev/vmnet1
sudo ip route del default via 192.168.5.1
sudo ip route add default via 192.168.11.1 dev vmnet1
sudo echo "nameserver 192.168.11.1" > /etc/resolv.conf

2. 运行 Openwrt 虚拟机。

————————————————-
全球独此一份,转载请注明出处。

文章通过 CC 4.0 BY-NC-ND 协议发布,转载请注明出处:云梦 » Ubuntu VMware + Openwrt 实现全局上网

评论 4

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. #1

    你这也忒麻烦啊,直接路由刷op,电脑手机直接无国界。

    lyin2周前 (04-07)回复
    • 请问有教程吗?

      文申武质2周前 (04-07)回复
      • 去恩山
        right.com.cn/forum/forum.php

        lyin2周前 (04-08)回复
    • 天天拿着电脑到处跑的人,没法出门带个路由器啊。

      晨晨2周前 (04-08)回复