Difference between revisions of "IPv6 Address : Bagian Network, juga dikenal sebagai prefix"

From OnnoWiki
Jump to navigation Jump to search
Line 21: Line 21:
 
Address dengan prefix ini akan ditemukan pada semua interface yang IPv6-enable setelah stateless auto-configuration (yang merupakan standard konfigurasi interface yang ada).
 
Address dengan prefix ini akan ditemukan pada semua interface yang IPv6-enable setelah stateless auto-configuration (yang merupakan standard konfigurasi interface yang ada).
  
3.2.2. Site local address type
+
==Site local address type==
  
 
These are addresses similar to the RFC 1918 / Address Allocation for Private Internets in IPv4 today, with the added advantage that everyone who use this address type has the capability to use the given 16 bits for a maximum number of 65536 subnets. Comparable with the 10.0.0.0/8 in IPv4 today.
 
These are addresses similar to the RFC 1918 / Address Allocation for Private Internets in IPv4 today, with the added advantage that everyone who use this address type has the capability to use the given 16 bits for a maximum number of 65536 subnets. Comparable with the 10.0.0.0/8 in IPv4 today.
Line 38: Line 38:
 
This address type is now deprecated RFC 3879 / Deprecating Site Local Addresses, but for a test in a lab, such addresses are still a good choice in my humble opinion.
 
This address type is now deprecated RFC 3879 / Deprecating Site Local Addresses, but for a test in a lab, such addresses are still a good choice in my humble opinion.
  
3.2.3. Unique Local IPv6 Unicast Addresses
+
==Unique Local IPv6 Unicast Addresses==
  
 
Because the original defined site local addresses are not unique, this can lead to major problems, if two former independend networks would be connected later (overlapping of subnets). This and other issues lead to a new address type named RFC 4193 / Unique Local IPv6 Unicast Addresses.
 
Because the original defined site local addresses are not unique, this can lead to major problems, if two former independend networks would be connected later (overlapping of subnets). This and other issues lead to a new address type named RFC 4193 / Unique Local IPv6 Unicast Addresses.
Line 53: Line 53:
 
  fd0f:8b72:ac90::/48
 
  fd0f:8b72:ac90::/48
  
3.2.4. Global address type "(Aggregatable) global unicast"
+
==Global address type "(Aggregatable) global unicast"==
  
 
Today, there is one global address type defined (the first design, called "provider based," was thrown away some years ago RFC 1884 / IP Version 6 Addressing Architecture [obsolete], you will find some remains in older Linux kernel sources).
 
Today, there is one global address type defined (the first design, called "provider based," was thrown away some years ago RFC 1884 / IP Version 6 Addressing Architecture [obsolete], you will find some remains in older Linux kernel sources).
Line 64: Line 64:
 
Note: the prefix “aggregatable” is thrown away in current drafts. There are some further subtypes defined, see below:
 
Note: the prefix “aggregatable” is thrown away in current drafts. There are some further subtypes defined, see below:
  
3.2.4.1. 6bone test addresses
+
==6bone test addresses==
  
 
These were the first global addresses which were defined and in use. They all start with
 
These were the first global addresses which were defined and in use. They all start with
Line 80: Line 80:
 
and is mostly shown in older examples. The reason for this is, if real addresses are are shown, it's possible for someone to do a copy & paste to their configuration files, thus inadvertently causing duplicates on a globally unique address. This would cause serious problems for the original host (e.g. getting answer packets for request that were never sent). Because IPv6 is now in production, this prefix is no longer be delegated and is removed from routing after 6.6.2006 (see RFC 3701 / 6bone Phaseout for more).
 
and is mostly shown in older examples. The reason for this is, if real addresses are are shown, it's possible for someone to do a copy & paste to their configuration files, thus inadvertently causing duplicates on a globally unique address. This would cause serious problems for the original host (e.g. getting answer packets for request that were never sent). Because IPv6 is now in production, this prefix is no longer be delegated and is removed from routing after 6.6.2006 (see RFC 3701 / 6bone Phaseout for more).
  
3.2.4.2. 6to4 addresses
+
==6to4 addresses==
  
 
These addresses, designed for a special tunneling mechanism [RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds and RFC 2893 / Transition Mechanisms for IPv6 Hosts and Routers], encode a given IPv4 address and a possible subnet and begin with
 
These addresses, designed for a special tunneling mechanism [RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds and RFC 2893 / Transition Mechanisms for IPv6 Hosts and Routers], encode a given IPv4 address and a possible subnet and begin with
Line 96: Line 96:
  
 
See also tunneling using 6to4 and information about 6to4 relay routers.
 
See also tunneling using 6to4 and information about 6to4 relay routers.
3.2.4.3. Assigned by provider for hierarchical routing
+
 
 +
 
 +
==Assigned by provider for hierarchical routing==
  
 
These addresses are delegated to Internet service providers (ISP) and begin currently with
 
These addresses are delegated to Internet service providers (ISP) and begin currently with
Line 106: Line 108:
 
Any ISP customer can get a prefix with length 48.
 
Any ISP customer can get a prefix with length 48.
  
3.2.4.4. Addresses reserved for examples and documentation
+
==Addresses reserved for examples and documentation==
  
 
Currently, two address ranges are reserved for examples and documentation RFC 3849 / IPv6 Address Prefix Reserved for Documentation:
 
Currently, two address ranges are reserved for examples and documentation RFC 3849 / IPv6 Address Prefix Reserved for Documentation:
Line 115: Line 117:
 
These address ranges should be filtered based on source addresses and should NOT be routed on border routers to the internet, if possible.
 
These address ranges should be filtered based on source addresses and should NOT be routed on border routers to the internet, if possible.
  
3.2.5. Multicast addresses
+
==Multicast addresses==
  
 
Multicast addresses are used for related services.
 
Multicast addresses are used for related services.
Line 125: Line 127:
 
They are split into scopes and types:
 
They are split into scopes and types:
  
3.2.5.1. Multicast scopes
+
==Multicast scopes==
  
 
Multicast scope is a parameter to specify the maximum distance a multicast packet can travel from the sending entity.
 
Multicast scope is a parameter to specify the maximum distance a multicast packet can travel from the sending entity.
Line 143: Line 145:
 
     others are reserved
 
     others are reserved
  
3.2.5.2. Multicast types
+
==Multicast types==
  
 
There are many types already defined/reserved (see RFC 4291 / IP Version 6 Addressing Architecture for details). Some examples are:
 
There are many types already defined/reserved (see RFC 4291 / IP Version 6 Addressing Architecture for details). Some examples are:
Line 151: Line 153:
 
     All Routers Address: ID = 2h, addresses all routers on the local node (ff01:0:0:0:0:0:0:2), on the connected link (ff02:0:0:0:0:0:0:2), or on the local site (ff05:0:0:0:0:0:0:2)
 
     All Routers Address: ID = 2h, addresses all routers on the local node (ff01:0:0:0:0:0:0:2), on the connected link (ff02:0:0:0:0:0:0:2), or on the local site (ff05:0:0:0:0:0:0:2)
  
3.2.5.3. Solicited node link-local multicast address
+
==Solicited node link-local multicast address==
  
 
Special multicast address used as destination address in neighborhood discovery, because unlike in IPv4, ARP no longer exists in IPv6.
 
Special multicast address used as destination address in neighborhood discovery, because unlike in IPv4, ARP no longer exists in IPv6.
Line 161: Line 163:
 
Used prefix shows that this is a link-local multicast address. The suffix is generated from the destination address. In this example, a packet should be sent to address “fe80::1234”, but the network stack doesn't know the current layer 2 MAC address. It replaces the upper 104 bits with “ff02:0:0:0:0:1:ff00::/104” and leaves the lower 24 bits untouched. This address is now used `on-link' to find the corresponding node which has to send a reply containing its layer 2 MAC address.
 
Used prefix shows that this is a link-local multicast address. The suffix is generated from the destination address. In this example, a packet should be sent to address “fe80::1234”, but the network stack doesn't know the current layer 2 MAC address. It replaces the upper 104 bits with “ff02:0:0:0:0:1:ff00::/104” and leaves the lower 24 bits untouched. This address is now used `on-link' to find the corresponding node which has to send a reply containing its layer 2 MAC address.
  
3.2.6. Anycast addresses
+
==Anycast addresses==
  
 
Anycast addresses are special addresses and are used to cover things like nearest DNS server, nearest DHCP server, or similar dynamic groups. Addresses are taken out of the unicast address space (aggregatable global or site-local at the moment). The anycast mechanism (client view) will be handled by dynamic routing protocols.
 
Anycast addresses are special addresses and are used to cover things like nearest DNS server, nearest DHCP server, or similar dynamic groups. Addresses are taken out of the unicast address space (aggregatable global or site-local at the moment). The anycast mechanism (client view) will be handled by dynamic routing protocols.
Line 167: Line 169:
 
Note: Anycast addresses cannot be used as source addresses, they are only used as destination addresses.
 
Note: Anycast addresses cannot be used as source addresses, they are only used as destination addresses.
  
3.2.6.1. Subnet-router anycast address
+
===Subnet-router anycast address===
  
 
A simple example for an anycast address is the subnet-router anycast address. Assuming that a node has the following global assigned IPv6 address:
 
A simple example for an anycast address is the subnet-router anycast address. Assuming that a node has the following global assigned IPv6 address:

Revision as of 07:15, 8 June 2013

Sumber: http://tldp.org/HOWTO/Linux+IPv6-HOWTO/x513.html

Perancang mendefinsikan beberapa tipe address, dan menyisakan banyak bagian untuk di definisikan lebih lanjut sesuai dengan kebutuhan. RFC 4291 / IP Version 6 Addressing Architecture mendefinisikan skema pengalamatan yang digunakan saat ini.

Mari kita lihat lebih lanjut berbagai tipe prefix (dan tipe address yang ada):

Tipe Local Link Address

Address spesial ini hanya valid untuk me-link ke sebuah interface. Jika kita menggunakan address ini sebagai tujuan maka paket tidak akan dapat melewati router. Address ini digunakan untuk komunikasi link antar interface, seperti,

  • Apakah ada yang berada pada link ini?
  • Apakah ada yang menggunakan address spesial (juga kita mencari router)?

Local link address dimulai dengan (dimana "x" adalah hex, biasanya "0").

fe8x:  <- saat ini kita menggunakan prefix ini.
fe9x:
feax:
febx:

Address dengan prefix ini akan ditemukan pada semua interface yang IPv6-enable setelah stateless auto-configuration (yang merupakan standard konfigurasi interface yang ada).

Site local address type

These are addresses similar to the RFC 1918 / Address Allocation for Private Internets in IPv4 today, with the added advantage that everyone who use this address type has the capability to use the given 16 bits for a maximum number of 65536 subnets. Comparable with the 10.0.0.0/8 in IPv4 today.

Another advantage: because it's possible to assign more than one address to an interface with IPv6, you can also assign such a site local address in addition to a global one.

It begins with:

fecx:  <- most commonly used
fedx:
feex:
fefx:

(where “x” is any hex character, normally “0”)

This address type is now deprecated RFC 3879 / Deprecating Site Local Addresses, but for a test in a lab, such addresses are still a good choice in my humble opinion.

Unique Local IPv6 Unicast Addresses

Because the original defined site local addresses are not unique, this can lead to major problems, if two former independend networks would be connected later (overlapping of subnets). This and other issues lead to a new address type named RFC 4193 / Unique Local IPv6 Unicast Addresses.

It begins with:

fcxx:
fdxx:  <- currently the only one in use

A part of the prefix (40 bits) are generated using a pseudo-random algorithm and it's improbable, that two generated ones are equal.

Example for a prefix (generated using a web-based tool: Goebel Consult / createLULA):

fd0f:8b72:ac90::/48

Global address type "(Aggregatable) global unicast"

Today, there is one global address type defined (the first design, called "provider based," was thrown away some years ago RFC 1884 / IP Version 6 Addressing Architecture [obsolete], you will find some remains in older Linux kernel sources).

It begins with (x are hex characters)

2xxx: 
3xxx:

Note: the prefix “aggregatable” is thrown away in current drafts. There are some further subtypes defined, see below:

6bone test addresses

These were the first global addresses which were defined and in use. They all start with

3ffe:

Example:

3ffe:ffff:100:f102::1

A special 6bone test address which will never be globally unique begins with

3ffe:ffff: 

and is mostly shown in older examples. The reason for this is, if real addresses are are shown, it's possible for someone to do a copy & paste to their configuration files, thus inadvertently causing duplicates on a globally unique address. This would cause serious problems for the original host (e.g. getting answer packets for request that were never sent). Because IPv6 is now in production, this prefix is no longer be delegated and is removed from routing after 6.6.2006 (see RFC 3701 / 6bone Phaseout for more).

6to4 addresses

These addresses, designed for a special tunneling mechanism [RFC 3056 / Connection of IPv6 Domains via IPv4 Clouds and RFC 2893 / Transition Mechanisms for IPv6 Hosts and Routers], encode a given IPv4 address and a possible subnet and begin with

2002:

For example, representing 192.168.1.1/5:

2002:c0a8:0101:5::1

A small shell command line can help you generating such address out of a given IPv4 one:

ipv4="1.2.3.4"; sla="5"; printf "2002:%02x%02x:%02x%02x:%04x::1" `echo $ipv4
¬ | tr "." " "` $sla

See also tunneling using 6to4 and information about 6to4 relay routers.


Assigned by provider for hierarchical routing

These addresses are delegated to Internet service providers (ISP) and begin currently with

2001:

Prefixes to major (backbone owning) ISPs (also known as LIRs) are delegated by local registries and currently have a prefix with length 32 assigned.

Any ISP customer can get a prefix with length 48.

Addresses reserved for examples and documentation

Currently, two address ranges are reserved for examples and documentation RFC 3849 / IPv6 Address Prefix Reserved for Documentation:

3fff:ffff::/32
2001:0DB8::/32   EXAMPLENET-WF

These address ranges should be filtered based on source addresses and should NOT be routed on border routers to the internet, if possible.

Multicast addresses

Multicast addresses are used for related services.

They alway start with (xx is the scope value)

ffxy:

They are split into scopes and types:

Multicast scopes

Multicast scope is a parameter to specify the maximum distance a multicast packet can travel from the sending entity.

Currently, the following regions (scopes) are defined:

   ffx1: node-local, packets never leave the node.
   ffx2: link-local, packets are never forwarded by routers, so they never leave the specified link.
   ffx5: site-local, packets never leave the site.
   ffx8: organization-local, packets never leave the organization (not so easy to implement, must be covered by routing protocol).
   ffxe: global scope.
   others are reserved

Multicast types

There are many types already defined/reserved (see RFC 4291 / IP Version 6 Addressing Architecture for details). Some examples are:

   All Nodes Address: ID = 1h, addresses all hosts on the local node (ff01:0:0:0:0:0:0:1) or the connected link (ff02:0:0:0:0:0:0:1).
   All Routers Address: ID = 2h, addresses all routers on the local node (ff01:0:0:0:0:0:0:2), on the connected link (ff02:0:0:0:0:0:0:2), or on the local site (ff05:0:0:0:0:0:0:2)

Solicited node link-local multicast address

Special multicast address used as destination address in neighborhood discovery, because unlike in IPv4, ARP no longer exists in IPv6.

An example of this address looks like

ff02::1:ff00:1234

Used prefix shows that this is a link-local multicast address. The suffix is generated from the destination address. In this example, a packet should be sent to address “fe80::1234”, but the network stack doesn't know the current layer 2 MAC address. It replaces the upper 104 bits with “ff02:0:0:0:0:1:ff00::/104” and leaves the lower 24 bits untouched. This address is now used `on-link' to find the corresponding node which has to send a reply containing its layer 2 MAC address.

Anycast addresses

Anycast addresses are special addresses and are used to cover things like nearest DNS server, nearest DHCP server, or similar dynamic groups. Addresses are taken out of the unicast address space (aggregatable global or site-local at the moment). The anycast mechanism (client view) will be handled by dynamic routing protocols.

Note: Anycast addresses cannot be used as source addresses, they are only used as destination addresses.

Subnet-router anycast address

A simple example for an anycast address is the subnet-router anycast address. Assuming that a node has the following global assigned IPv6 address:

2001:db8:100:f101:210:a4ff:fee3:9566/64  <- Node's address

The subnet-router anycast address will be created blanking the suffix (least significant 64 bits) completely:

2001:db8:100:f101::/64  <- subnet-router anycast address

Referensi