RAKNET内核 - IPV6拟补IPV4资源的不足

来源:互联网 发布:淘宝抢购秒杀神器 编辑:程序博客网 时间:2024/04/30 22:45

1. 前言

随着网络的发展,全球的终端量暴增,在未来有限的IPV4资源即将消耗殆尽。为了解决这种困境,此时IPV6应运而生,从数量级而言,IPV6所拥有的地址容量是IPv4的约8×10^28倍。


2. RakNet支持IPV6

RakNet默认支持IPV6,如果您不想使用可以在RakNetDefines.h将RAKNET_SUPPORT_IPV6设置为0。我不建议这么做,是因为完全可以在程序中自行决定是否使用IPV6作为网络连接的。

RakNet使用IPV6是如此的简单:

RakNet::SocketDescriptor socketDescriptors[2];socketDescriptors[0].port=atoi(portstring);socketDescriptors[0].socketFamily=AF_INET; // Test out IPV4socketDescriptors[1].port=atoi(portstring);socketDescriptors[1].socketFamily=AF_INET6; // Test out IPV6// 尝试使用IPV6bool b = server->Startup(4, socketDescriptors, 2)==RakNet::RAKNET_STARTED;server->SetMaximumIncomingConnections(4);// 判断本机是否支持IPV6,不支持的话才使用IPV4if (!b){printf("尝试启用IPV6失败,尝试使用IPV4\n");b = server->Startup(4, socketDescriptors, 1)==RakNet::RAKNET_STARTED;if (!b){puts("服务器启动失败,终止!");exit(1);}}

这段代码您可以在《RAKENT创建UDP实例,RAKNET简单通讯实例》找到


3. 扩展阅读

  • IPV6   http://baike.baidu.com/view/5228.htm
  • IPV6 Support   http://www.jenkinssoftware.com/raknet/manual/ipv6support.html

您可以修改并重新发布本文,如果您能留下本文的参考连结,万分谢谢!
如果您对本文存在疑问,欢迎留言或者直接对本文评论,我会在看到的第一时间回复您。

原创粉丝点击