Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
IPv6
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Addressing== {{Main|IPv6 address}} [[File:IPv6 address stracture-en.svg|thumb|A general structure for an IPv6 unicast address]] [[IPv6 address]]es have 128 bits. The design of the IPv6 address space implements a different design philosophy than in IPv4, in which subnetting was used to improve the efficiency of utilization of the small address space. In IPv6, the address space is deemed large enough for the foreseeable future, and a local area subnet always uses 64 bits for the host portion of the address, designated as the interface identifier, while the most-significant 64 bits are used as the routing prefix.{{Ref RFC|4291|rp=9}} While the myth has existed regarding IPv6 subnets being impossible to scan, RFC 7707 notes that patterns resulting from some IPv6 address configuration techniques and algorithms allow address scanning in many real-world scenarios. ===Address representation=== The 128 bits of an IPv6 address are represented in 8 groups of 16 bits each. Each group is written as four hexadecimal digits (sometimes called ''[[hextet]]s''<ref name="Graziani2012">{{cite book|first=Rick|last=Graziani|title=IPv6 Fundamentals: A Straightforward Approach to Understanding IPv6|date=2012|publisher=[[Cisco Press]]|isbn=978-0-13-303347-2|page=55|url=https://books.google.com/books?id=FbYjJjZNA5gC&pg=PA55}}</ref><ref name="Coffeen2014">{{cite book|first=Tom|last=Coffeen|title=IPv6 Address Planning: Designing an Address Plan for the Future|date=2014|publisher=[[O'Reilly Media]]|isbn=978-1-4919-0326-1|page=170|url=https://books.google.com/books?id=dZU8BQAAQBAJ&pg=PT170}}</ref> or more formally ''[[hexadectet]]s''<ref name="Horley2013">{{cite book|first=Edward|last=Horley|title=Practical IPv6 for Windows Administrators|date=2013|publisher=[[Apress]]|isbn=978-1-4302-6371-5|page=17|url=https://books.google.com/books?id=u50QAwAAQBAJ&q=17&pg=PA17}}</ref> and informally a ''quibble'' or ''quad-nibble''<ref name="Horley2013"/>) and the groups are separated by colons (:). An example of this representation is {{IPaddr|2001:0db8:0000:0000:0000:ff00:0042:8329}}. For convenience and clarity, the representation of an IPv6 address may be shortened with the following rules: *One or more [[leading zero]]s from any group of hexadecimal digits are removed, which is usually done to all of the leading zeros. For example, the group {{IPaddr|0042}} is converted to {{IPaddr|42}}. The group {{IPaddr|0000}} is converted to {{IPaddr|0}}. *Consecutive sections of zeros are replaced with two colons (::). This may only be used once in an address, as multiple use would render the address indeterminate. A double colon should not be used to denote an omitted single section of zeros.{{Ref RFC|5952|rsection=4.2.2}} An example of application of these rules: :Initial address: {{IPaddr|2001:0db8:0000:0000:0000:ff00:0042:8329}}. :After removing all leading zeros in each group: {{IPaddr|2001:db8:0:0:0:ff00:42:8329}}. :After omitting consecutive sections of zeros: {{IPaddr|2001:db8::ff00:42:8329}}. The loopback address is defined as {{IPaddr|0000:0000:0000:0000:0000:0000:0000:0001}}{{Ref RFC|5156}} and is abbreviated to {{IPaddr|::1}} by using both rules. As an IPv6 address may have more than one representation, the IETF has issued a [[IPv6 address#Representation|proposed standard for representing them in text]].{{Ref RFC|5952}} Because IPv6 addresses contain colons, and URLs use colons to separate the host from the port number, an IPv6 address used as the host-part of a URL should be enclosed in square brackets,{{Ref RFC|3986}} e.g. <nowiki>http://[2001:db8:4006:812::200e]</nowiki> or <nowiki>http://[2001:db8:4006:812::200e]:8080/path/page.html</nowiki>. ===Link-local address=== [[File:IPv6 link local unicast address structure-en.svg|thumb|The Link-Local Unicast Address structure in IPv6]] All interfaces of IPv6 hosts require a [[link-local address]], which have the prefix {{IPaddr|fe80::|10}}. This prefix is followed by 54 bits that can be used for subnetting, although they are typically set to zeros, and a 64-bit interface identifier. The host can compute and assign the Interface identifier by itself without the presence or cooperation of an external network component like a DHCP server, in a process called ''link-local address autoconfiguration''.{{Citation needed|date=January 2022}} The lower 64 bits of the link-local address (the suffix) were originally derived from the MAC address of the underlying network interface card. As this method of assigning addresses would cause undesirable address changes when faulty network cards were replaced, and as it also suffered from a number of security and privacy issues, {{IETF RFC|8064}} has replaced the original MAC-based method with the hash-based method specified in {{IETF RFC|7217}}.{{Citation needed|date=January 2022}} ===Address uniqueness and router solicitation=== IPv6 uses a new mechanism for mapping IP addresses to link-layer addresses (e.g. [[MAC address]]es), because it does not support the [[Broadcasting (networking)|broadcast]] addressing method, on which the functionality of the [[Address Resolution Protocol]] (ARP) in IPv4 is based. IPv6 implements the [[Neighbor Discovery Protocol]] (NDP, ND) in the [[link layer]], which relies on [[ICMPv6]] and [[multicast]] transmission.<ref name="Rosen kernel networking"/>{{rp|210}} IPv6 hosts verify the uniqueness of their IPv6 addresses in a [[local area network]] (LAN) by sending a neighbor solicitation message asking for the link-layer address of the IP address. If any other host in the LAN is using that address, it responds.<ref name="T. Narten pp. 54">{{cite journal|first=T.|last=Narten|title=Neighbor discovery and stateless autoconfiguration in IPv6|journal=IEEE Internet Computing|volume=3|issue=4|pages=54β62|date=August 1999|doi=10.1109/4236.780961}}</ref> A host bringing up a new IPv6 interface first generates a unique link-local address using one of several mechanisms designed to generate a unique address. Should a non-unique address be detected, the host can try again with a newly generated address. Once a unique link-local address is established, the IPv6 host determines whether the LAN is connected on this link to any [[Router (computing)|router]] interface that supports IPv6. It does so by sending out an ICMPv6 router solicitation message to the all-routers<ref name="rfc4861sec637">{{Cite web |last=Narten |first=T. |date=September 2007 |title=Neighbor Discovery for IP version 6 (IPv6) |url=https://datatracker.ietf.org/doc/html/rfc4861#section-6.3.7 |url-status=live |archive-url=https://web.archive.org/web/20240117035643/https://datatracker.ietf.org/doc/html/rfc4861#section-6.3.7 |archive-date=17 January 2024 |publisher=[[IETF]] |at=section 6.3.7 |doi=10.17487/RFC4861 |rfc=4861 |doi-access=free }}</ref> multicast group with its link-local address as source. If there is no answer after a predetermined number of attempts, the host concludes that no routers are connected. If it does get a response, known as a router advertisement, from a router, the response includes the network configuration information to allow establishment of a globally unique address with an appropriate unicast network prefix.<ref name="rfc4862sec551">{{Cite web |last=Thomson |first=S. |date=September 2007 |title=IPv6 Stateless Address Autoconfiguration - Section 5.5.1 |url=https://datatracker.ietf.org/doc/html/rfc4862#section-5.5.1 |url-status=live |archive-url=https://web.archive.org/web/20240111084216/https://datatracker.ietf.org/doc/html/rfc4862#section-5.5.1 |archive-date=11 January 2024 |publisher=[[IETF]] |doi=10.17487/RFC4862 |rfc=4862 }}</ref> There are also two flag bits that tell the host whether it should use DHCP to get further information and addresses: *The Manage bit, which indicates whether or not the host should use DHCP to obtain additional addresses rather than rely on an auto-configured address from the router advertisement. *The Other bit, which indicates whether or not the host should obtain other information through DHCP. The other information consists of one or more prefix information options for the subnets that the host is attached to, a lifetime for the prefix, and two flags:<ref name="T. Narten pp. 54"/> **On-link: If this flag is set, the host will treat all addresses on the specific subnet as being on-link and send packets directly to them instead of sending them to a router for the duration of the given lifetime. **Address: This flag tells the host to actually create a global address. ===Global addressing=== [[File:IPv6 global unicast address stracture-en.svg|thumb|The global unicast address structure in IPv6]] The assignment procedure for global addresses is similar to local-address construction. The prefix is supplied from router advertisements on the network. Multiple prefix announcements cause multiple addresses to be configured.<ref name="T. Narten pp. 54"/> Stateless address autoconfiguration (SLAAC) requires a {{IPaddr||64}} address block.{{Ref RFC|4291}} [[Local Internet registry|Local Internet registries]] are assigned at least {{IPaddr||32}} blocks, which they divide among subordinate networks.<ref>{{Cite web |date=8 February 2011 |title=IPv6 Address Allocation and Assignment Policy |url=https://www.ripe.net/publications/docs/ripe-512/ |url-status=live |archive-url=https://web.archive.org/web/20230603052402/https://www.ripe.net/publications/docs/ripe-512 |archive-date=3 June 2023 |access-date=27 March 2011 |publisher=[[RIPE NCC]] }}</ref> The initial recommendation of {{date|September 2001}} stated assignment of a {{IPaddr||48}} subnet to end-consumer sites.{{Ref RFC|3177}} In {{Date|March 2011}} this recommendation was refined:{{Ref RFC|6177}} The [[IETF]] "recommends giving home sites significantly more than a single {{IPaddr||64}}, but does not recommend that every home site be given a {{IPaddr||48}} either". Blocks of {{IPaddr||56}}s are specifically considered. It remains to be seen whether ISPs will honor this recommendation. For example, during initial trials, [[Comcast]] customers were given a single {{IPaddr||64}} network.<ref>{{Cite press release |last=Brzozowski |first=John |date=31 January 2011 |title=Comcast Activates First Users With IPv6 Native Dual Stack Over DOCSIS |url=https://corporate.comcast.com/comcast-voices/comcast-activates-first-users-with-ipv6-native-dual-stack-over-docsis |url-status=live |archive-url=https://web.archive.org/web/20231023064638/https://corporate.comcast.com/comcast-voices/comcast-activates-first-users-with-ipv6-native-dual-stack-over-docsis |archive-date=23 October 2023 |access-date=15 April 2019 |publisher=[[Comcast]] }}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)