利索能及
我要发布
收藏
专利号: 2020110069102
申请人: 浙江农林大学暨阳学院
专利类型:发明专利
专利状态:已下证
更新日期:2026-01-08
缴费截止日期: 暂无
联系人

摘要:

权利要求书:

1.一种IPv6地址转换方法,其特征在于:该方法步骤如下所述:步骤一、主机Host A发送IPv6报文到达交换机S;

步骤二、交换机S将其转发至NAT设备FW‑S;

步骤三、NAT设备FW‑S完成替换IPv6报文首部,并为IPv6报文增加SDNAT首部,完成转换;SDNAT首部包括Next header字段、类型字段、Length、原始Src IPv6、替换后Src IPv6、原始Dst IPv6、替换后Dst IPv6、原始Src Port、替换后Src Port、原始Dst Port和替换后Dst Port;

步骤四、将增加SDNAT首部的IPv6报文发转发至网络;

步骤五、NAT设备FW‑D通过网络接收IPv6报文并检查,后转换,将转换后的报文转发给交换机D;

步骤六、IPv6报文到达交换机D,交换机D完成检查旧校检和,如果旧校检和合格则重新计算校检和,并去除SDNAT首部,之后将报文转发给主机Host B;如果旧校检和不合格,则丢弃报文;

步骤六包括以下步骤:

a.检查旧校检和,从SDNAT首部提取出原始Src IPv6字段和原始Src Port字段,然后结合传输层报文,计算校检和,并将计算得出的校检和与原报文中的校检和比对,如果不一致,则丢弃该报文;如果一致,则进行下一步;

b.完成传输层报文首部的替换,用SDNAT首部的替换后的Dst Port字段赋值给传输层首部的Dst port字段,将替换后的Src port赋值给传输层首部的Src port字段;

c.完成传输层报文校检和的重新计算;

d.去掉SDNAT首部,从报文中移除SDNAT首部,将IPv6首部的Next header字段修改,使其指向传输层报文首部;

e.将报文转发至主机Host B。

2.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:步骤三中,将IPv6首部Src IPv6字段替换为NAT设备FW‑S地址,Next header字段修改,使得Next header字段表示下一个扩展首部是SDNAT。

3.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:步骤五包括以下步骤:a.NAT设备FW‑D根据转换表,检查接收到的报文;

b.NAT设备FW‑D根据转换表,将IPv6首部的Dst IPv6字段修改为主机HostB地址,同时对应修改SDNAT首部的替换后Dst IPv6字段,并将SDNAT首部的Dst port字段修改,完成报文转换;

c.将转换好的报文转发至交换机D。

4.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:交换机的转发过程如下:a.提取出收到帧的目的MAC地址;

b.检查帧是否含有SDNAT首部,如果没有,则按照正常的以太网交换机方式进行转发,否则进行步骤c;

c.在MAC地址转发表中查找目的MAC地址,如果不存在,则将该帧丢弃;如果存在,则判断目的MAC对应的端口的设备是否是主机;如果不是主机,则直接把帧从对应的端口转发出去;如果是主机,则进行步骤d;

d.检查传输层旧校检和,如果旧校检和合格,则进行传输层字段替换,并重新计算校检和,之后将报文转发给目标主机;如果旧校检和不合格,则丢弃报文。

5.根据权利要求1或4所述的一种IPv6地址转换方法,其特征在于:交换机的端口连接信息由控制器告知。

6.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:NAT设备具有出方向功能,实现步骤如下:a.为出方向需要进行地址转换的IPv6报文加入SDNAT首部;

b.进行源地址转换;

c.将报文转发出去;

d.在转换表中,记录转换关系。

7.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:NAT设备具有入方向功能,实现步骤如下:a.提取首先提取出SDNAT首部的替换后Dst IPv6字段和替换后Dst Port字段,然后查找转换表,看是否有方向为“入”,且原始IP和端口字段分别与上面两个值相同的条目,如果有,则继续步骤b,如果没有则将报文丢弃;

b.进行目的地址转换;对于IPv6首部,根据转换表将Dst IPv6字段用转换后IPv6地址进行替换;

c.对于传输层首部的Dst Port字段,根据转换表确定转换后的端口;

d.修改SDNAT首部部分字段值:修改SDNAT首部替换后Dst IPv6字段和替换后Dst port字段;

e.将报文转发出去。

8.根据权利要求1所述的一种IPv6地址转换方法,其特征在于:当IPv6首部中的Next header字段值为253,则表示下一个扩展首部为SDNAT首部,SDNAT首部后面紧接着的是其他扩展首部,其他扩展首部后是传输层数据。