CN111934929B - 一种路由器设置方法及路由器 - Google Patents

一种路由器设置方法及路由器 Download PDF

Info

Publication number
CN111934929B
CN111934929B CN202010779200.7A CN202010779200A CN111934929B CN 111934929 B CN111934929 B CN 111934929B CN 202010779200 A CN202010779200 A CN 202010779200A CN 111934929 B CN111934929 B CN 111934929B
Authority
CN
China
Prior art keywords
router
message
special
rule
port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010779200.7A
Other languages
English (en)
Other versions
CN111934929A (zh
Inventor
董亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Ruiges Technology Co ltd
Original Assignee
Hangzhou Ruiges Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Ruiges Technology Co ltd filed Critical Hangzhou Ruiges Technology Co ltd
Priority to CN202010779200.7A priority Critical patent/CN111934929B/zh
Publication of CN111934929A publication Critical patent/CN111934929A/zh
Application granted granted Critical
Publication of CN111934929B publication Critical patent/CN111934929B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Abstract

本发明公开了一种路由器设置方法及路由器,让路由器的WAN口接收控制终端发送的特殊报文,并通过对特殊报文进行解析来学习管理者的IP及要设置的WAN口iptables规则,当所述特殊报文记载的控制终端IP和需要开放的端口号与路由器的WAN口iptables规则不一致时,重置该iptables规则,在设置了新规则以后,对发自该IP的报文直接放行,实现不需要连接现场路由器而可以从WAN口直接访问路由器的目的。

Description

一种路由器设置方法及路由器
技术领域
本发明涉及物联网路由器领域,尤其是一种路由器设置方法及路由器。
背景技术
在当今网络设备迅猛发展的时代,路由器作为局域网中信息汇聚转发的核心设备,被越来越多地应用于各行各业的各个领域。由于其作为各个小型局域网中信息和外界进行交换的特殊地位,人们会对路由器的应用也进行了越来越多的拓展,比如路由器会被装上蓝牙、zigbee、3G/4G模块,变成一个物联网路由器。特别是在工厂、仓储等应用场景,多以物联网路由器来进行简单的组网应用。随着多组路由器的应用,对他们的管理也存在不小的问题。当设备管理人员对现场进行管理的时候,需要一个个连接到各物联网路由器进行配置,当现场网络和应用场景改变的时候,又要重新设置一次,这给设备管理带来诸多的不便利。
路由器的外观接口被分成WAN口和LAN口两种接口,设计之初的初衷就是为了解决现有IPv4数量不够的问题,让LAN侧的设备可以任意指定网段。WAN口的IP通常由上级设备授予,主要用于和互联网设备信息的交互,LAN侧设备的私有网段由路由器自己分配,主要给所连接的终端设备使用,WAN口和LAN侧的IP网段不属于一个网段。路由器工作的时候,对于LAN侧的数据包,通常需要使用NAT转换成WAN口的IP和MAC地址发出去,回应的数据包又通过NAT转换IP,发送给原设备,而直接从WAN口访问的报文是会被直接丢弃的。这样路由器相当于一个简易的防火墙装置,外面的数据包不可能轻易的进来,里面的数据包经过了NAT转换才出去。
由于路由器特殊的包转发特性,使得我们直接从WAN口访问路由器基本是无法实现的。目前要想直接从WAN口配置路由器,首先需要从LAN侧登录路由器,使用iptables设定WAN口iptables规则,让某些IP的以太网报文或者某些端口的报文可以直接进入WAN口,达到从WAN口访问路由器的目的。
现有的这种方式在实际操作的时候存在这么几个问题:
如果现场有多组路由器,WAN口iptables规则的设置都是要通过LAN侧去登录后才能设置的,如果路由器带有无线功能还好,如果只有有线接口,则需要我们到现场一台台去设置,造成极大的不方便;
按目前的设置方法,WAN口的iptables规则只能设置一次,如果现场需要改变规则,只能重新从LAN侧连接进去再设置一次,而不能实现WAN口iptables规则的动态配置;
如果现场有多台路由器,不能实现集中式的规则配置管理,如果需要定制集中管理功能则需要更多的成本和时间,这对于大部分小企业来说是极其不划算的。
发明内容
本发明的目的在于提供一种实现可以从WAN口访问路由器的路由器设置方法及路由器。
本发明的目的采用如下技术方案实现:
本发明提供一种路由器设置方法,包括如下步骤:
路由器的WAN口接收控制终端发送的特殊报文,所述特殊报文记载了控制终端IP和需要开放的端口号;
路由器对所述特殊报文进行检验,当所述特殊报文满足预设解析条件时,路由器对所述特殊报文进行解析;
当所述特殊报文记载的控制终端IP和需要开放的端口号与路由器的WAN口iptables规则不一致时,重置该iptables规则。
进一步的,所述特殊报文为连续发送的三条ICMP报文。
进一步的,所述特殊报文的Data区域结构包括序号、开放协议端口,以及和校验。
进一步的,所述预设解析条件为:单条报文的Data区域的第一个字节是小于等于3的序号;单条报文的Data区域满足和校验条件;三条特殊报文的序号依次连续。
进一步的,所述和校验条件为:所述特殊报文的Data区域的和校验为四个字节,所述特殊报文的Data区域除了和校验的四个字节外其余字节之和与和校验一致。
进一步的,所述特殊报文的Data区域结构还包括操作码,用于表示添加规则或删除规则。
进一步的,当所述特殊报文满足预设解析条件时,对路由器的协议栈处理函数增加Data区域。
一种路由器,包括WAN口通信模块、判断模块、解析模块和处理模块;
所述WAN口通信模块,用于路由器WAN口接收控制终端发送的报文;
所述判断模块,用于判断报文是否满足预设解析条件;
所述解析模块,用于解析报文,并学习其中要设立的iptables规则;
所述处理模块,用于对现有WAN口iptables规则的检查和/或新的WAN口iptables规则的设立。
本发明公开了一种路由器设置方法及路由器,让路由器的WAN口接收控制终端发送的特殊报文,并通过对特殊报文进行解析来学习管理者的IP及要设置的WAN口iptables规则,当所述特殊报文记载的控制终端IP和需要开放的端口号与路由器的WAN口iptables规则不一致时,重置该iptables规则,在设置了新规则以后,对发自该IP的报文直接放行,实现不需要连接现场路由器而可以从WAN口直接访问路由器的目的。
附图说明
图1为本发明路由器设置方法的流程示意图。
具体实施方式
在对本申请的实施方案进行介绍之前,首先对相关名词进行简单介绍,以便于对本申请的实施方案的理解:
ICMP:Internet Control Message Protocol,是一种面向无连接的网络层协议,是TCP/IP协议族的一个子协议。它主要用于在IP主机、路由器等网络设备之间传递控制消息,其主要作用有两个,一是确认IP包是否成功到达目标地址,二是通知在发送过程中IP包被丢弃的原因。
iptables:一种配置控制IP信息包过滤和防火墙配置的工具,多用于路由器上,对路由器的数据包实现转换、限制、控制等功能。iptables通常和netfilter配合使用,netfilter是负责数据包过滤、网络地址转换(NAT)和基于协议类型的连接跟踪等,而iptables是一个管理netfilter的工具。
本发明按照以下流程来对WAN口规则进行设置(如图1所示):
1)控制终端直接给路由器的WAN口连续发送三次特殊的ICMP报文,特殊报文记载了控制终端IP和需要开放的端口号。之所以采用ICMP报文,是因为路由器对于ICMP报文不会丢弃,特别是PING指令的ICMP报文,大部分路由器是会解析并回复的。选择连续发送三次报文是要和普通的ICMP报文区别,以触发学习机制;
2)路由器可以对ICMP报文进行检验,路由器对符合条件的报文进行下一步的解析,否则按普通ICMP报文处理;
触发路由器对报文的解析必须符合三个条件:单条报文的Data区域的第一个字节是小于等于3的序号;所有Data区域除了最后四个字节的和相加必须与最后四个字节的和校验一致;最后要求连续收到3条序号依次连续的报文。当以上所有的条件都满足以后才会启动对ICMP报文Data区域的解析,除此以外都被当作普通的ICMP报文进行正常的解析。
3)路由器解析相关的ICMP特殊报文,学习到其中要设立的iptables规则;
4)路由器按照数据中相应的规则去设置iptables规则,当路由器进行规则设置的时候,首先会执行检查旧的规则及规则清理工作,并对新的规则做相应的检查,最后把新的iptables规则设立进去。
当相关报文到达路由器以后,路由器的CPU会直接把ICMP报文送到协议栈进行解析。协议栈会按照报文的类型来进行分类处理。
为了保障信息的完整性和安全性,区别含有私有协议的ICMP特殊报文和ICMP普通报文,本发明设计为连续发送三次含有连续序号的ICMP报文后路由器解析私有协议的具体规则。
在实际使用的过程中,我们一般使用ping命令来探测路由器的通讯是否可达,如果是在同一局域网层面的扁平网络拓扑中,我们使用ping指令的参数地址一般是WAN口的地址。ping使用的是ICMP协议,当发送ICMP回送请求消息给目的路由器设备,大部分路由器都会对ping指令回应,所以我们选择ICMP报文作为特殊的信息载体,以达到指令传送的目的。
ICMP报文的IP头的结构举例如下:
Version:4,表示IPv4。
Header Length:5,表示5个以32bit为单位的word,即20bytes。
Time to live:64,生存时间。
Protocol:1,表示ICMP。
Source:192.168.3.210,源IP地址,即控制终端IP,路由器学习的规则匹配IP即来源于此。
Destination:192.168.3.168,目的IP地址,即路由器WAN口IP。
ICMP报文的结构如下表:
Figure BDA0002619592120000061
其中:
Type:该字段有1个字节,表示特定类型的ICMP报文。
Code:该字段有1个字节,进一步细分ICMP的类型。如上图所示,Type的值为8,Code的值为0,表示回显请求。
Checksum:该字段有2个字节,表示校验和。
Identifier:该字段有2个字节,用于匹配Request/Reply的标识符。
Seq Num:该字段有2个字节,用于匹配Request/Reply的序列号。
Data:数据载荷,即为私有协议的装载区域。
可以看到,ping命令过程的Echo request和Echo reply报文基本都被字母顺序填充,没有实际意义。所以为了传送设置规则,我们可以利用这部分区域来搭载iptables设置规则。实际使用中,我们可以把预设规则按一定的格式来填充,然后路由器按我们设定的规则去解析,即可把设置的规则解析出来。
在Data区域中,原生的ICMP报文由字母来填充,大概有32个字节。由于原协议对Data区域不是很关心,所以我们可以重新定义Data区域来存放私有协议。
重新定义的Data区域的结构如下表:
序号 开放端口号 操作码 保留 和校验
序号:该字段有1个字节,表示连续三次特殊的ICMP报文序号;
开放端口号:该字段有2个字节,表示要将路由器的哪个端口开放;
操作码:该字段有1个字节,1表示添加规则,0表示删除规则;
保留:该字段有24个字节,用于协议扩展,用0填充;
和校验:该字段有4个字节,用于计算私有协议区的信息和校验。
其中,操作码的设置可实现动态设置,建立能设置也能取消规则的机制。
和校验保证了信息的完成性。
综上所述,我们可以定义如下ICMP报文组成:
Figure BDA0002619592120000071
Figure BDA0002619592120000081
Figure BDA0002619592120000091
由于路由器协议栈对于ICMP报文的处理不会关心Data区域的数据,不符合解析条件的报文会被当成普通的ICMP协议处理。只有符合预设解析条件的报文,才会对Data区域的内容进行解析。本发明将特殊报文Data区域的序号以及和校验作为预设解析条件,ICMP特殊报文含有连续序号1、2、3并且协议内容相同。
本发明需要在协议栈增加解析特殊报文的解析函数,依次取出报文Data区域中第二、三个字节的需要设置的开放端口号,第四个字节的操作码,同时把这些信息传递给iptables回调函数,作为iptables规则设定的参数。
路由器解析ICMP特殊报文的相关协议后,即可按照私有协议的约定设置相关的iptables规则,此规则设置以后即可生效不需要重启。例如,路由器解析到想设置SSH端口报文放行(端口号22),即可使用以下指令来设置:
iptables-D input_wan_rule-p tcp--dport 22-j ACCEPT
该规则代表路由器WAN口可以直接让访问22端口的报文放行,此协议生效后,可以使用以下指令来查看。
iptables-nvL input_wan_rule
规则最终生效,WAN口会对规则匹配的报文放行,控制终端就可以从WAN口直接访问路由器。
由于设置太多的规则会影响路由器的转发效率,因此我们设置的规则最好只能一条,如多次协议设置的内容重复或相冲突,则路由器不予以设置新的iptables规则。至此,通过这种自学习的方式,我们实现了对路由器从WAN口放行部分端口报文的规则设置,实现了简单的集中式管理方式。
根据上述路由器设置方法,本发明还提供一种路由器,包括WAN口通信模块、判断模块、解析模块和处理模块;
WAN口通信模块,用于路由器WAN口接收控制终端发送的报文;
判断模块,用于判断报文是否满足预设解析条件;
解析模块,用于解析报文,并学习其中要设立的iptables规则;
处理模块,用于对路由器现有WAN口iptables规则的检查,当需要设立的iptables规则与现有WAN口iptables规则不一致时,设立新的WAN口iptables规则。
本发明提出了一种利用ICMP报文实现对路由器iptables规则进行设置的方式。通过这种自学习式的设置方法,免除了我们需要登录各个路由器预先进行设置的烦恼,实现了一种简单可行的集中式设置方法。

Claims (6)

1.一种路由器设置方法,其特征在于,包括如下步骤:
路由器的WAN口接收控制终端发送的特殊报文,所述特殊报文记载了控制终端IP和需要开放的端口号;所述特殊报文为连续发送的三条ICMP报文;
路由器对所述特殊报文进行检验,当所述特殊报文满足预设解析条件时,路由器对所述特殊报文进行解析;
当所述特殊报文记载的控制终端IP和需要开放的端口号与路由器的WAN口iptables规则不一致时,重置该iptables规则;
所述预设解析条件为:单条报文的Data区域的第一个字节是小于等于3的序号;单条报文的Data区域满足和校验条件;三条特殊报文的序号依次连续。
2.如权利要求1所述的方法,其特征在于,所述特殊报文的Data区域结构包括序号、开放协议端口,以及和校验。
3.如权利要求1所述的方法,其特征在于,所述和校验条件为:所述特殊报文的Data区域的和校验为四个字节,所述特殊报文的Data区域除了和校验的四个字节外其余字节之和与和校验一致。
4.如权利要求2所述的方法,其特征在于,所述特殊报文的Data区域结构还包括操作码,用于表示添加规则或删除规则。
5.如权利要求1所述的方法,其特征在于,当所述特殊报文满足预设解析条件时,对路由器的协议栈处理函数增加Data区域。
6.一种路由器,其特征在于,包括WAN口通信模块、判断模块、解析模块和处理模块;
所述WAN口通信模块,用于路由器WAN口接收控制终端发送的报文;所述报文为连续发送的三条ICMP报文;
所述判断模块,用于判断报文是否满足预设解析条件;
所述解析模块,用于解析报文,并学习其中要设立的iptables规则;
所述处理模块,用于对现有WAN口iptables规则的检查和/或新的WAN口iptables规则的设立;
所述预设解析条件为:单条报文的Data区域的第一个字节是小于等于3的序号;单条报文的Data区域满足和校验条件;三条报文的序号依次连续。
CN202010779200.7A 2020-08-05 2020-08-05 一种路由器设置方法及路由器 Active CN111934929B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010779200.7A CN111934929B (zh) 2020-08-05 2020-08-05 一种路由器设置方法及路由器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010779200.7A CN111934929B (zh) 2020-08-05 2020-08-05 一种路由器设置方法及路由器

Publications (2)

Publication Number Publication Date
CN111934929A CN111934929A (zh) 2020-11-13
CN111934929B true CN111934929B (zh) 2023-03-24

Family

ID=73306498

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010779200.7A Active CN111934929B (zh) 2020-08-05 2020-08-05 一种路由器设置方法及路由器

Country Status (1)

Country Link
CN (1) CN111934929B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801561A (zh) * 2012-08-09 2012-11-28 深圳市双赢伟业科技股份有限公司 一种管理网络设备的方法
CN104883368A (zh) * 2015-05-28 2015-09-02 上海斐讯数据通信技术有限公司 一种内核防火墙的管理方法
CN108377211A (zh) * 2018-01-31 2018-08-07 湖南戎腾网络科技有限公司 基于报文内容感知的动态规则链式递归触发方法及其系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070274285A1 (en) * 2006-05-23 2007-11-29 Werber Ryan A System and method for configuring a router
EP2410698B1 (en) * 2010-07-19 2014-05-07 Alcatel Lucent A method for routing and associated routing device and destination device
US8555369B2 (en) * 2011-10-10 2013-10-08 International Business Machines Corporation Secure firewall rule formulation
EP3602315B1 (en) * 2017-03-27 2022-06-22 Cujo LLC Securing port forwarding through a network traffic hub

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801561A (zh) * 2012-08-09 2012-11-28 深圳市双赢伟业科技股份有限公司 一种管理网络设备的方法
CN104883368A (zh) * 2015-05-28 2015-09-02 上海斐讯数据通信技术有限公司 一种内核防火墙的管理方法
CN108377211A (zh) * 2018-01-31 2018-08-07 湖南戎腾网络科技有限公司 基于报文内容感知的动态规则链式递归触发方法及其系统

Also Published As

Publication number Publication date
CN111934929A (zh) 2020-11-13

Similar Documents

Publication Publication Date Title
US8184550B2 (en) Gateway with improved QoS awareness
US8462820B2 (en) Network traffic synchronization mechanism
US8102854B2 (en) Neighbor discovery proxy with distributed packet inspection scheme
CN109428949A (zh) 一种基于sdn实现arp代理的方法和装置
CN102647487A (zh) 一种节约ip地址的方法及接入代理设备
EP2628278B1 (en) Method, system and element for multipurpose data traffic engineering and routing
US7085808B2 (en) Method for distinguishing clients in a communication system, a communication system; and a communication device
CN105052106B (zh) 用于接收和传输互联网协议(ip)数据包的方法和系统
CN113347258A (zh) 云流量下的数据采集监控分析的方法及系统
CN111934929B (zh) 一种路由器设置方法及路由器
JP3614006B2 (ja) 非対称経路利用通信システム、および、非対称経路利用通信方法
CN114390020A (zh) 一种在地址转换nat场景下opc协议alg实现方法
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
CN113794715A (zh) 一种虚拟点对点网络数据发送、接收、应答方法及其系统
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging
Cisco Configuring Source-Route Bridging

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant