通过IPv4networking隧道

大部分文章我已经读过关于隧道。 它描述了隧道支持通过(穿越)Ipv4networking的2个IPv6networking之间的通信。 例如:

TUNNEL A (IPv6) ==> INTERNET NETWORK (IPv4) => TUNNEL B (IPv6) 

是否可行:

  TUNNEL A (IPv4) ==> INTERNET NETWORK (IPv6) => TUNNEL B (IPv4) 

请给我一个详细解释的答案。

提前致谢。

绝对是的,但是你需要“正确”的软件。

你没有提到操作系统,所以我会用一个我熟悉的。 FreeBSD有tun接口。 这是一种通用的隧道协议(实际上与许多VPN使用的协议相同),您可以分配IPv4或IPv6端点以及IPv4或IPv6专用地址。 这允许IPv4-over-IPv6或IPv6-over-IPv4或IPv4-over-IPv4等。

通过这样的实现,您的私有地址和目的地必须是相同的协议(IPv4或IPv6)。 还有像DNS64 / NAT64这样的技术允许您在连接IPv4和IPv6 Internet的同时在本地运行IPv6。 还有其他技术,如6to4,它是一个隧道协议的核心,但允许你在你的内部networking上有一个IPv6地址,一个IPv4的外部地址,并且仍然连接到IPv6 Internet。

有更多的细节,你想要完成什么资源将有助于巨大的。

明确地。 如果您要问如何在思科环境中执行此操作,则configuration如下:

(r100)tun1(IPv4)==> IPv6 Core =>(r107)tun0(IPv4)

 r100's e0/0 ipv6 address is 2001:1:1:1::100/64 r107's e0/0 ipv6 address is 2001:3:0:2::107/64 r100#sh run int tun1 Building configuration... Current configuration : 151 bytes ! interface Tunnel1 ip address 10.254.254.5 255.255.255.252 tunnel source Ethernet0/0 tunnel mode gre ipv6 tunnel destination 2001:3:0:2::107 end r107#sh run int tun0 Building configuration... Current configuration : 151 bytes ! interface Tunnel0 ip address 10.254.254.6 255.255.255.252 tunnel source Ethernet0/0 tunnel mode gre ipv6 tunnel destination 2001:1:1:1::100 end 

通过ipv6核心从r100(ipv4)到r107(ipv4)ping:

 r100#ping 10.254.254.6 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.254.254.6, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/2 ms r100# 

通过ipv6核心从r107(ipv4)到r100(ipv4)ping:

 r107#ping 10.254.254.5 Type escape sequence to abort. Sending 5, 100-byte ICMP Echos to 10.254.254.5, timeout is 2 seconds: !!!!! Success rate is 100 percent (5/5), round-trip min/avg/max = 1/1/1 ms r107# 

当前连接到IPv6的大多数用户都是以这种方式连接的。 IPv6有6in4和6to4隧道。 这些将IPv6报文封装在一个IPv4报文中并通过IPv4networking发送。 IPv6数据包是IPv4数据包的有效载荷。 对于IPv4报头,每个数据包有20个字节的开销,从而导致以这种方式路由的封装器的更小的MTU。

IPv4选项很可能是通过IPv6运行的VPN。 我认为用于IPv6 over IPv4的相同技术可以用于IPv6上的IPv4,尽pipe我不知道有哪些。

IPv6也具有IPv4的寻址scheme,因此可以在IPv6networking中使用IPv6地址。 但是,IPv4标头处理选项的方式不同,需要某些标头选项的标头转换。 在IPv6networking中路由IPv4地址存在重大问题,封装将是首选的传输方式。

所有路由器和设备通常是双栈。 这意味着,如果您传输IPv4数据包,则IPv6设备将协商该数据并将其作为IPv4接收,并作为IPv4发送,以便terminal正确接收。

没有设备,我知道哪些只是IPv6,这将是愚蠢的,供应商不会出售任何设备。

IPv6到IPv4到IPv6的终点需要将IPv6数据包封装在IPv4数据包中。 这可以通过隧道(手动IPv6隧道,6to4隧道或ISATAP),toredo隧道或第三方代理服务完成。 各有优点和缺点。

这些信息具有不同的头信息,以便IPv6设备知道它是封装的,并且可以在每端正确地打开。 当IPv6设备收到封装的数据包时,通常会剥去标头。 IPv6头信息与IPv4头信息完全不同。 现在IPv6头信息较less。

现在每个操作系统都是双栈,除了Win XP,你可以下载一个客户端来处理。

在这篇文章中描述的各种隧道方法有点太长了。

为了回答你的问题,不需要将IPv4设备通过IPv6设备隧道到IPv4端点,因为中间人将是双栈。 这意味着IPv4和IPv6。