发明名称 进阶域名系统之双边防火墙穿越法
摘要
申请公布号 TWI512527 申请公布日期 2015.12.11
申请号 TW103104646 申请日期 2014.02.13
申请人 国立台北科技大学 发明人 黄绍华;叶政育;陈冠霖;锺耀兴;黄启荣;沈立得;张舜杰;姚秉志;朱召平;古甯允;林子闳;叶明哲
分类号 G06F21/50 主分类号 G06F21/50
代理机构 代理人
主权项 一种进阶域名系统之双边防火墙穿越法,该进阶域名系统包含:一个人电脑;一伺服器;一ADNS(进阶域名系统)伺服器,置于个人电脑与伺服器之间;一第一NAT防火墙,置于个人电脑与ADNS伺服器之间;一第二NAT防火墙,置于ADNS伺服器与伺服器之间;一第一ADNS模组,置于个人电脑与第一NAT防火墙之间;一第二ADNS模组,置于第二NAT防火墙与伺服器之间;在第一ADNS模组、第一NAT防火墙、ADNS伺服器、第二NAT防火墙与第二ADNS模组之间的通道是UDP通道;在个人电脑与第一ADNS模组之间以及第二ADNS模组与伺服器之间则是TCP(传输控制协议)通道或UDP通道;该穿越法的步骤如下:a.个人电脑首先发出一Setup讯息给第一ADNS模组,表示开始进行穿越第一NAT防火墙;b.然后第一ADNS模组以多次Register讯息经第一NAT防火墙给ADNS伺服器,以侦测出第一NAT防火墙分配通讯埠口的规则;c.伺服器提供了N个通讯服务埠口,发出一SetServicePort讯息给第二ADNS模组,表示可以提供服务;伺服器接着发出一Setup讯息给第二ADNS模组,表示开始进行穿越第二NAT防火墙;d.然后第二ADNS模组以多次Register讯息经第二NAT防火墙给ADNS伺服器,以侦测出第二NAT防火墙分配通讯埠口的规则; e.此后个人电脑发出GetInfo讯息给第一ADNS模组,表示想要获得伺服器一域名的IP位置;首先要求第一ADNS模组与第二ADNS模组互相取得通讯埠口及分配通讯埠口的规则;f.第一ADNS模组与第二ADNS模组均发出Sampling讯息取得通讯埠口,并互相告知通讯埠口及分配通讯埠口的规则;g.第一ADNS模组与第二ADNS模组均发出Peer OK讯息给对方,表示完成穿越第一防火墙与第二防火墙;h.接着第一ADNS模组发出Get讯息给第二ADNS模组,取得伺服器的N个通讯服务埠口,第一ADNS模组也对应开通N个通讯服务埠;i.第一ADNS模组发出Give Local IP讯息给个人电脑,假称伺服器域名的IP位置是一本地的IP;j.个人电脑与第一ADNS模组之间进行三次交握,然后第一ADNS模组发出Notify connect讯息送至第二ADNS模组,促使第二ADNS模组与伺服器之间进行三次交握;k.个人电脑送出IP GET封包给第一ADNS模组,由第一ADNS模组保持;l.第二ADNS模组与伺服器之间完成三次交握后,送出Notify FINE讯息给第一ADNS模组,表示准备妥当,可以接受封包;m.于是第一ADNS模组将IP GET封包送给第二ADNS模组,再由第二ADNS模组将IP GET封包送给伺服器;n.伺服器回送IP 200 OK封包给第二ADNS模组,由第二ADNS模组将IP 200 OK封包送给第一ADNS模组;o.再由第一ADNS模组将IP 200 OK封包送给个人电脑,表示送达IP封包; 其中k步骤与n步骤中必须经过一道转换程序如下所述:若是TCP通道传来的资料(如IP GET封包、IP 200 OK封包)则送至一第一编号标头,将传来的资料赋予一个识别编号标头,然后送入一UDT(基于UDP的数据传输协议)函式库,UDT函式库会将TCP通道传来的资料加上UDT专属的标头,并藉由UDT的可靠机制,让该资料在UDP通道上传输;若是UDP通道传来的资料送至一第二编号标头,将传来的资料赋予一个识别编号标头,然后直接送入UDP通道;其中m步骤与o步骤中必须经过一道转换程序如下所述:UDP通道传来的资料(如IP GET封包、IP 200 OK封包)经判断是否为UDT封包,若有UDT标头则是UDT封包,送入UDT函式库,取得资料封包,然后经过第一编号标头除掉识别编号标头,并根据识别编号,将资料送入对应的TCP通道;若没有UDT标头则是UDP封包,送入第二编号标头除掉识别编号标头,而送入对应的UDP通道。
地址 台北市大安区忠孝东路3段1号