1 序言
很多人现在都需要安装一个 OpenWRT,但是他又不愿意做主路由。想做旁路由,看了很多人的视频或者文字教程,但是又不明白为什么,今天跟随我一次性弄明白。这次我们主要先弄明白以下两点。
- 首先,我们要知道什么是同一网段,很重要这点。
- 其次,我们要知道什么是旁路由。
2 什么是同一网段
2.1 五类网络地址
这里我们通常说的 IPv4 网络,众所周知计算机是二进制,也就是 0 和 1。IPv4 是32位,也就是 23²,假如我们把这 32 位分成每 8 位为一个部分,也就是 4 个字节,如下所示。
# 为了区分好看我就写1 2 3 4 5 6 7 8表示,这里不是8进制
12345678 12345678 12345678 12345678我们就以我们最熟悉的 192.168.1.1为例子,那么每个小数点分开的地方是不是对应上面的每一部分?假如我们用二进制表示,是不是就可以得到一个 32 位地址?
# 192.168.1.1
# 11000000 10101000 00000001 00000001所以 IPv4 地址可以分为五个固定类,A类、B类、C类、D类、E类。其中的 A、B、C 类由两个固定长度的字段组成。第一个字段为网络号,标志主机所连接的网络;第二个为主机号,标志着主机。主机号全位 0 定义为广播地址,不可随意使用。D、E 类为特殊地址。
A类地址 0丨网络地址(7位)丨主机地址(24位)
主机范围1.0.0.0到127.255.255.255
B类地址 10丨网络地址(14位)丨主机地址(16位)
主机范围128.0.0.0到191.255.255.255
C类地址 110丨网络地址(21位)丨主机地址(8位)
主机范围192.0.0.0到223.255.255.255
D类地址 1110丨多目的广播地址(28位)
主机范围224.0.0.0到239.255.255.255
E类地址 11110丨保留地址用于实验和将来使用
主机范围240.0.0.0到247.255.255.255A 类地址
1+3 第一个字节为网络号,其后为主机号
范围为 0.0.0.0-126.0.0.0。IP 地址首位为 0(二进制),因此网络号取值与 1~127 之间。此类地址下可拥有高达 2^24 台主机,一般用于大型网络。默认子网掩码:255.0.0.0
B 类地址
2+2 前两个字节为网络号,其后为主机号
范围为 128.0.0.0-191.255.0.0,IP 地址前两位为 10(二进制),因此网络号取值与 128-191 之间。可用主机位为 2^16=65536,一般用于中等规模网络,如大学、科研所等。需要注意的是,只要超过 254 台主机,就会分配到 B 类 IP 地址,而空余 IP 并不能被其他网络下的主机使用,极易造成浪费。默认子网掩码:255.255.0.0
C 类地址
3+1 前三个字节为网络号,其后为主机号
范围为 192.0.0.0-223.255.255.255.0。IP 地址前三位为 110(二进制),因此网络号取值于 192-223 之间。可用主机位为 2^8-2=254,一般用于小型网络,如公司、家庭网络(wifi)。默认子网掩码:255.255.255.0
D 类地址
多播地址。IP 地址最前面为 1110(二进制),因此网络号取值于 224~239 之间。一般用于多路广播用户。
E 类地址
保留地址。IP 地址最前面为 1111(二进制),因此网络号取值于 240~255 之间,通常用于科学研究。
当然在A、B、C类中大多数都是公网地址,也有少部分是私有地址,也就是我们局域网内的地址。
| A 类 | 10.0.0.0- 10.255.255.255 |
|---|---|
| B 类 | 172.16.0.0-172.31.255.255 |
| C 类 | 192.168.0.0-192.168.255.255 |
2.2 子网掩码
子网掩码是什么呢?子网掩码的作用是定义子网的大小,比如 IP 为 192.168.1.1,在 192.168.1.0 这个子网中,子网掩码为 255.255.255.0,也就是 /24,这里的 24 表示网络号的位数。网络号部分是 192.168.1,那么192.168.1.1中最后的 1 为主机部分。
IP地址与子网掩码进行与运算,结果是广播域网络。子网掩码取反后与广播域或运算,结果是广播地址。
我们以192.168.1.1为例,子网掩码为255.255.255.0。
他的广播域网络为192.168.1.0,广播地址为192.168.1.255。
第一个可用地址为192.168.1.1,最后一个可用地址为192.168.1.254。
所以虽然我们有256个地址从0到255,但是我们实际能使用的地址只有1到254,共254个地址。
2.3 实际例子解决同一网段问题
假如有两个 IP,A 的 IP 为 192.168.1.1,B 的 IP 为 192.168.1.200,那么他们在子网掩码为 **255.255.255.0(/24) **是是否为同一网段?**255.255.255.128(/25)**呢?
我们口算得到如下所示,
# 问题一
# IP 192.168.1.1 和 192.168.1.200
# 子网掩码 255.255.255.0
# IP 192.168.1.1/24
广播域网络 192.168.1.0
第一个可用地址 192.168.1.1
最后一个可用地址 192.168.1.254
广播地址 192.168.1.255
# IP 192.168.1.200/24
广播域网络 192.168.1.0
第一个可用地址 192.168.1.1
最后一个可用地址 192.168.1.254
广播地址 192.168.1.255
综上显然192.168.1.1 和 192.168.1.200在子网掩码为255.255.255.0上是同一网段
# 问题二
# IP 192.168.1.1 和 192.168.1.200
# 子网掩码 255.255.255.128
# IP 192.168.1.1/25
广播域网络 192.168.1.0
第一个可用地址 192.168.1.1
最后一个可用地址 192.168.1.126
广播地址 192.168.1.127
# IP 192.168.1.200/25
广播域网络 192.168.1.128
第一个可用地址 192.168.1.129
最后一个可用地址 192.168.1.254
广播地址 192.168.1.255
综上显然192.168.1.1 和 192.168.1.200在子网掩码为255.255.255.128上不是同一网段2.4 无脑判断方法
如果你看不懂计算没关系,直接无脑判断。局域网我们都用子网掩码为 255.255.255.0 也是 /24,那么 192.168.1.1到 192.168.1.254 都是同一网段,但是 192.168.2.1 和 192.168.1.2 在 /24 就不是同一网段。是的就是这么简单,子网掩码固定 /24,前面三个字节(黄色部分)相同就是同一网段。
3 什么是旁路由
其实并没有什么旁路由,其实一直都是只有网关路由,通过不同的网关和 DNS 来控制走不同的流量,走相对于的服务。当然拨号的路由器叫主路由,同一网段内其他路由自然就被大佬叫成旁路由了。旁路由只需要配置一个 Lan 口就行,这点很重要。
电脑设置网关为主路由的,那流量走的就是主路由;AP 设置网关为旁路由的,那流量走的就是旁路由。
4 选择 OpenWRT 版本
OpenWRT 版本很多,今天我就介绍几个版本,都是通用的。
4.1 immortalWRT
immortalWRT 官网地址为:https://downloads.immortalwrt.org/
默认 IP 为:``192.168.1.1账号root,密码 password`
4.2 kwrt
KWRT官网地址为:https://openwrt.ai/
默认 IP 为:10.0.0.1 账号 root,密码 root
4.3 iStoreOS
iStoreOS官网地址为:https://fw.koolcenter.com/iStoreOS/
默认 DHCP,需要去主路由查看,当然可能是 192.168.100.1,账号 root,密码 password
4.4 其他 openwrt
请去恩山论坛找!
5. 安装所选版本的 OpenWRT
安装过程略!我选择的是 immortalWRT 固件。
6 连接 OpenWRT,修改 IP
6.1 修改电脑和路由为同一网段
如果你和我一样用的是虚拟机安装,那么直接在虚拟机的 VNC 页面修改就行。如果你是物理机,或者你是什么 arm 的硬路由,或者人手一台的 N1 盒子。那么你需要把你的机器插上网线接在交换机上。我们想办法首先物理连接是同一网络,再来修改软件上为同一网段才能访问 openwrt设备。
打开电脑、控制面板、网络、网络连接,选择网卡、右键属性、Internet 协议4,输入对应和 immortalWRT 同一网段 192.168.1.1 的 IP。但是我通常都是已经固定好主路由 IP 的,在不破坏原本网段又想连接上 immotalWRT 网段可以这么做,在高级那里添加一个 192.168.1.1 网段的 IP 就行,最后确定。


6.2 登录 openwrt
改好同一网段以后,我们就可以在浏览器输入 immotalWRT 的 IP 192.168.1.1,打开 web 网页。得到下面界面就说明成功了,接着输入账号 root ,密码 password 进入。

7 修改为旁路由,设置 IPv4 和 IPv6
7.1 修改 openwrt 密码
登录第一件事,修改密码,特别是那些域名解析的用户。

7.2 修改 openwrt lan 网口 IP
- 网络、接口、打开编辑

- 因为我的主路由是 192.168.3.1,所以我把 IP 改成如图所示

- 接着就是填写 DNS,禁用 IPv6 分配,以及忽略 DHCP 服务器(一个网络只开一个DHCP,主路由开了,那么旁路由就关闭)。


- 保存后,接着新建一个接口,名称为 lan6,协议为 DHCPv6 ,接口为 @lan。接着在高级设置中,如图所示设置,保存应用就可以得到你主路由分配的 IPv6 地址。


最后输入新 IP 和新密码就可以登录 web 后台,查看一下是否获取到了 IPv6。

8 安装主题和需要的软件
8.1 更新软件包
首先打开系统、软件包、更新列表。

8.2 安装主题
在搜索框中搜索你需要安装的软件,比如主题包,点安装。




最后刷新一下,主题就安装好了。其他软件也是类似的,immotalWRT软件包还是很强大的,基本上你想安装的都有。
9 安装和扩容 docker
9.1 防火墙设置
在安装 docker 之前,我们需要把防火墙全点接受,不然你安装 docker 也没办法使用。

9.2 安装磁盘管理工具
打开系统→软件包,搜索安装 luci-app-diskman。

9.3 安装挂载点工具
打开系统→软件包,搜索安装 block-mount。

9.4 使用磁盘管理工具
打开系统→磁盘管理→编辑,创建分区,分区大小,挂载点,格式为 etx4。


9.5 使用挂载点工具
打开系统→挂载点→添加相应的挂载。
警告
安装 docker 之前必须先挂载目录 /opt/docker 这个目录。

9.6 安装docker
同样的在软件包搜索 docker,安装如图所示的几个软件,其实只用安装 dockerman 这个 app 就行。

9.7 安装 SFTP
同样的在软件包搜索 openssh-sftp-server
10. 总结
基本上,你看到这里,你会这些操作,你基本上旁路由也掌握了。
