Recently, because of the company’s project development was rejected IPV6, very depressed. Let us going on this IPV6.
Since Apple announced on apple WWDC2015 iOS9 will support pure IPv6 network services, we are ready for the heart. But then read the official did not talk about a word.
“Using high-level networking such as and the frameworks you connect by name, you should not to change for your app to work CFNetwork with IPv6 addresses need NSURLSession and anything APIs”
uses a high level network such as API, NSURLSession and CFNetwork framework, you can through the name of the connection, you should not need to change anything for your application to use the IPv6 address to work.
1, IPV6 profile
IPv6 is the abbreviation of Internet Protocol Version 6, which Internet Protocol translated as “Internet protocol”. IPv6 is the IETF (Internet Engineering Task Force, Internet Engineering Task Force) designed to replace the current version of IP protocol (IPv4) for the next generation of IP protocol, as for every grain of sand in the world on a web site. University classroom teachers are popular here do not do too much explanation.
2, why Apple forced support IPv6-only network
The biggest problem of IPv4 is that the network address resource is limited, which seriously restricts the application and development of internet. The use of IPv6, not only can solve the problem of the number of network address resources, but also to solve a variety of access devices connected to the Internet barriers. In addition to solving the IPv4 depletion problem, IPv6 is more efficient than IPv4.
for example, IPv6:
- Avoid the need for network address translation (NAT).
- Faster routing over the network by using a simplified header.
- Prevent network fragmentation.
- Avoid broadcast for neighbor address resolution.
it seems that Apple has a vision, but also a step ahead of others. 3, the solution is that we use the AFNetWorking throughout the project, the official document has clearly pointed out that the use of NSURLSession and CFNetwork, for example, the framework is to support the IPV6. Check a lot of information to prove that the client is no problem. Code is no problem that is the server side of the problem. Our server is the use of Ali cloud, so that the background of a colleague did not look at the cloud does not support the need to set the IPV6. Find two articles I hope to help you access the domain name
Ali cloud server through the IPV6 address how to set the IPV6 through the App review of the Store 4 and IPV6 4.1 test methods of terminal command terminal dig +nocmd + nostats AAAA
your domain name Got answer status if the view state is NO ERROR that is not supported IPV6 what’s the problem. If the state of status is SERVFAIL it is not supported.
4.1 to build the local environment for testing IPV6
- Make sure your Mac is connected to the Internet, but not through Wi-Fi.
- Start system preferences settings from Dock, LaunchPad or Apple menu.
- Press the Option key, and then click share. Do not release the Option key.
open sharing preferences
4 in the shared service list to select Internet share .
configuration Internet share
5 release Option key .
6 select Create NAT64 network check box.
7 selects a network interface to provide Internet connectivity, such as Thunderbolt ethernet.
select the network interface
8 to select the Wi-Fi check box in
9 on the
to share the Wi-Fi option on
, and configure the network’s network name and security options for Wi-Fi.
access network options
set the local Wi-Fi network
options selected “Internet sharing” check box to enable local network.
enable Internet sharing
11 when the system prompts you to confirm that you want to start sharing, click start.
to start sharing sharing after activation, you should see a green indicator light and a label, said Internet Sharing:On. In the Wi-Fi menu, you will also see a small and faint arrow up, indicating that the Internet enabled sharing. You now have a IPv6 NAT64 network that can connect to it from other devices to test your application.
important tip: to ensure that the test is strictly carried out on the local IPv6 network, make sure that the test device has no other active network interface. For example, if you are using the iOS device for testing, make sure that the mobile service is disabled, so you can only test it by Wi-Fi. 5, reference
official document http://www.cnblogs.com/vijayfly/p/6612771.html