前言:近来,升级了宽带至500M,发现原来的路由器(K3)网速不太达标,辗转查询、多次测试之后发现带宽的瓶颈在于路由器上的固件只能支持软件NAT,无法发挥硬件加速功能,故打算让光猫加速NAT,路由器作为辅助,安排一些远程访问之类的高级功能

想法是好的,可是实际操作起来却又不是一帆风顺,在网上查找诸多资料,逛遍几大论坛之后发现,原来K3的官方固件、官改固件都是能够支持硬件NAT加速功能的,至于速度嘛,大家的测试都是900M+,可见硬件NAT的显著效果。

先从有线下手,如下图,把LAN1与WAN加入同一个VLAN中,在这里,要注意VLAN的概念,熟悉网络的人应当明白其中含义,在这里浅谈一下我自己的理解。

所谓"VLAN",字面意思就是:虚拟的"LAN",在实际生活中,为了划分不同的LAN区域,我们可以使用路由器或带管理功能的交换机进行划分。

VLAN划分基于一个事实:在大多数场合,IP地址(IPv4,当然,IPv6也有DHCPv6)都是由DHCP自动配置的,而DHCP的一大特点就是需要利用广播(这也是零状态配置的缘故)来完成DHCP发现,因此,要想让各个LAN中的设备正常上网,每一个LAN中至少需要一台DHCP服务器或能够转发、响应DHCP的主机,因此一个LAN(无论是物理的还是虚拟的)最本质的特征应该是一个广播域,由此便可以承载基于广播的ARP、DHCP等IP中的关键服务,而主机往往对自己所在LAN之外的世界一无所知,也很难去影响,这便起到了减少广播数量、保护整体网络安全的作用。

而许多企业或学校对LAN的划分要求往往基于地域、使用者等等,需要分出大量的LAN,而采购大量的路由器显然并不现实,这就要求要在有限的物理设备上支持更多的LAN划分,于是厂商顺势而为,一个简单的交换机动辄便可划分1024个或以上的VLAN,而DHCP服务器也可以通过掩码来控制各个VLAN的地址与规模,极大方便了网络管理。

而Openwrt中的“交换机”界面如图,可以看到,路由器上存在两个VLAN,ID为1(对内局域网)和2(对外广域网),而CPU对这两者的状态均是“已标记”,其它接口又是“未标记”,这是什么意思呢?原因在于,CPU需要掌握各个VLAN的信息并进行数据包处理,倘若不知道某个数据包的来源,对数据的处理显然是无法实现的,因此,此处的标记指的是:发送到CPU的,符合RFC标准的IP数据包中VLAN字段应当包含其来源的VLAN ID,而对于其它接口,则不需要这一信息(因为一个接口只能位于一个VLAN,如果将它与多个VLAN绑定,那么这些VLAN事实上就会合并为一个大的VLAN,但是某些场合下数据包加上了VLAN ID的除外),取消标记还可减少数据包传输的开销。

本次要实现的功能也与此有密不可分的关系,如果要实现将路由器的无线功能仅作为AP使用,相信大家都知道如何操作,最简单的方案便是将LAN上的DHCP功能关闭,将上联网线由WAN口改插LAN口,这样路由器也就完全成为了一个AP,在padavan(老毛子)固件中,更是直接就有AP模式可以一键选择。

不过,选择了该模式,就意味着路由器只能在物理层和数据链路层工作了,相当于降了一级,成为了交换机,也失去了远程管理等许多功能,作为本系列的文章,我更加希望网络不仅是“能用”,还需要“好用”,倘若失去这些功能,前面的文章就没有意义了。

因此,结合以上的VLAN知识,我们可以将有线接口划分至WAN,从而实现这一目的,而对于无线接入点,Openwrt也将它们视作接口,因此以上方法仍是有效的,具体如下图。

更改之后

可见只要将希望更改的无线网络变更即可。

进行到了这里,你的无线设备应该能够获取IP地址正常连接网络了,事情是不是就如此简单呢?

一个有趣的问题产生了:如果你的路由器拥有“WAN6”虚拟接口,并且在其上正常获取了IPv6地址,那么此时你会发现一切如常,但是,如果你尝试点击重连这一接口,或是重启路由器的话,你将会发现IPv6地址始终获取不到,情况就如同下图。

原因何在呢?其实,理论上WAN6是在WAN的基础上虚拟出的接口,其应当与WAN处于同一网络接口上,在Openwrt中,接口遵循下列关系:物理接口(机身上的WAN/LAN)—>网络接口(eth0.1/0.2、br-lan/wan等,可以随意绑定到任意物理接口,可以是单个或多个)—>虚拟接口(如WAN6、无线接入点等,它们可以被分配给任一网络接口,一个网络接口上可以承载多个虚拟接口)。

观察上图可知,当无线网络与网络接口WAN绑定后,系统自动生成了一个新的接口“br-wan”以提示WAN上发生了桥接(图片蛮形象的, 将一根网线接入两个网口,意味着这两个网口背后的区域自动连通,即发生了桥接,生成了新的VLAN)。

此时,在明白了原理之后,要想实现我们的预期目标就十分简单了,只需要将WAN6修改到与WAN相同的网络接口“br-wan”即可,如下图所示。

之后,不出意外的话我们就可以在WAN6上看到刚刚获取到的IPv6地址了

速度达标咯~

问题顺利解决,在解决问题的过程中,我也学到了不少VLAN与网络接口的知识,这样的问题应当还是一个“小众”的需求,需要这份答案的人应该并不多,但是我们还是应当在遇到问题时更加深入一些,不要仅仅满足于得到答案,却错过了更加重要的东西。

免费好用的IPv6之一个有趣的需求——浅谈Openwrt的VLAN相关推荐

  1. 以马原的视角浅谈IP地址的发展——IPv4、IPv6、NAT

    文章写的有点长,核心就是介绍IP地址的原理,以及NAT有好处也有坏处,IPv6相比较IPv4也是有好处和坏处,感兴趣的可以往最后划. 以马原的视角浅谈IP地址的发展--IPv4.IPv6.NAT IP ...

  2. ipv6 java代码影响_浅谈IPv4至IPv6演进的实施路径

    作者:个推运维平台网络工程师 宗堂 1 业务背景 在互联网呈现爆炸式发展的今天, IPv4网络地址数量匮乏等问题将会影响到我国的互联网发展与应用,制约物联网.5G等新业务开展.今年4月国家工信部发布了 ...

  3. 浅谈IPv4协议与IPv6协议的区别

    浅谈IPv4协议与IPv6协议的区别?咱们先了解下什么叫IPv4协议和IPv6协议.IPv4,是互联网协议(Internet Protocol,IP)的第四版,应属第一个被广泛应用,构成现阶段互联网技 ...

  4. 免费好用的IPv6之DDNS服务-Openwrt上dynv6的使用介绍

    概述:本文主要介绍了dynv6在OpenWrt上的配置及使用,对于有IPv6地址的用户,可以按照本文自行探索更多玩法 针对近期dynv6网站的更新,本文于2020.2.13更新. 参考dynv6网站推 ...

  5. 免费好用的IPv6之远程管理路由器-OpenWrt上uhttpd的使用介绍

    概述:本文介绍了OpenWrt上的uhttpd程序在IPv6网络下的配置方法,针对IPv6下无法正常访问,但IPv4下却可以访问的问题,通过修改默认的配置文件,对其进行了解决 什么是uhttpd? 其 ...

  6. 个人申请并部署阿里云免费Symantec SSL过程浅谈

    SSL部署过程 web服务器类型是Apache 服务器操作系统:Linux 在阿里云的安全-SSL证书-立即购买选择-Symantec -选择保护类型一个域名-免费型DV-SSL,就可以购买了 购买完 ...

  7. 红米ac2100有ipv6吗_【1222多功能版OpenWrt】红米小米AC2100|IPV6|酸奶|SmartDNS|多拨|猫咪,附教程...

    本帖最后由 hfy166 于 2020-12-23 17:22 编辑 更新日志:[1222多功能更新]修复首次刷机wifi默认关闭bug. 喜欢精简版/AP版的看这里:https://www.righ ...

  8. 一次简单的计网实践——浅谈校园网认证原理、ipv6机制绕过认证限制、双路由器宿舍组网

    注:本文所涉及的"任何设备",指在学生正常活动的区域内使用的设备. 一.山东大学威海校区校园网ipv4认证原理 1.认证系统介绍 山大威海校区内的校园网认证页面地址均为http:/ ...

  9. 浅谈---免费ARP 【Gratuitous ARP】

    1.免费ARP定义 ARP Request 报文中Sender IP 和 Target IP 都是自己的报文被称为免费ARP报文(Gratuitous ARP). 2.免费ARP作用 免费ARP报文主 ...

最新文章

  1. 网络营销专员浅析在网络营销中网站关键词对网站流量获取有何影响?
  2. Totem-DesignNet处理器插件开发方法
  3. 大众点评订单分库分表实践之路
  4. aspx ajax获取后台数据,aspx界面中,怎么调用后台的方法,处理某个数据
  5. ESP32-S3与ESP32-S2相比,有什么不同呢?
  6. Mac idea使用Command + p 快捷键查看一个类的构造函数需要传入什么参数
  7. sqlrelay mysql_php+sqlrelay+mysql实现连接池及读写负载均衡
  8. oracle日志查看问题?
  9. 为什么要从自然数扩大到实数,进而扩大到复数?
  10. Java数组的转换和拷贝
  11. python中数据类型转换_Python(二).数据类型,数据类型转换
  12. 基本数据类型-集合(set)_上周内容回顾(字符串_数字_列表_元组_字典_集合)
  13. WebStorm功能特点以及使用指南
  14. 软件工程预测模型之COCOMO
  15. win10微信卡顿_电脑一分钟小技巧:win10微信电脑端多开方法
  16. 软件工程大作业(1)
  17. HEVC亮度分量帧内预测模式代码详解
  18. 整理了100个软硬件都要懂的示波器基础知识
  19. TAKE2获GRAIL 授权早期鼻咽癌检测技术
  20. 二维几何变换java代码_基于Batik的SVG应用: 关于几何变换

热门文章

  1. linux网口初始化_深入理解Linux网络技术内幕——网络设备初始化
  2. (二)地理信息中对地球的描述-地球的大地水准面、地球椭球体、大地基准面
  3. 真实生活的记录:我三年的外企生涯(8) 出处:天涯虚拟社区
  4. 解决小程序api为http和豆瓣限制小程序使用api问题
  5. bash的特殊符号、变量和运算符
  6. 【W-Hive】一站式生成与发布跨平台移动应用程序
  7. 高数 | 单调函数必有反函数 有反函数的不一定是单调函数
  8. 【时序】TCCT:用于时间序列预测的紧耦合卷积 Transformer
  9. 《Android平台开发之旅》学习笔记
  10. 用 Fiddler 来抓取手机包