Documentation
1) IPv4
IPv4 address formats
- CIDR: Classless Inter-Domain Routing, this is a normal IP address in the format IP/mask. Example: 192.168.1.42/24
- IP and netmask: 192.168.1.42 255.255.255.0
Overview of common IPv4 subnets and masks
Mask Hosts Usable Netmask Hex Mask
/30 4 2 255.255.255.252 fffffffc this is 1/64 of a Class C net
/29 8 6 255.255.255.248 fffffff8 this is 1/32 of a Class C net
/28 16 14 255.255.255.240 fffffff0 this is 1/16 of a Class C net
/27 32 30 255.255.255.224 ffffffe0 this is 1/8 of a Class C net
/26 64 62 255.255.255.192 ffffffc0 this is 1/4 of a Class C net
/24 256 254 255.255.255.0 ffffff00 this is a Class C net
/23 512 510 255.255.254.0 fffffe00 these are 2 Class C net
/22 1024 1022 255.255.252.0 fffffc00 these are 4 Class C net
/21 2048 2046 255.255.248.0 fffff800 these are 8 Class C net
/20 4096 4094 255.255.240.0 fffff000 these are 16 Class C net
/19 8192 8190 255.255.224.0 ffffe000 these are 32 Class C net
/18 16384 16382 255.255.192.0 ffffc000 these are 64 Class C net
/17 32768 32766 255.255.128.0 ffff8000 these are 128 Class C net
/16 65536 65534 255.255.0.0 ffff0000 these are 256 Class C net = Class B net
IPv4 Multicast addresses (224.0.0.0/4)
All multicast addresses can easily be recognized because they
start with the bit pattern "1110".
- 224.0.0.0 - 224.0.0.255 Link-local scope multicast address
- 224.0.1.0 - 238.255.255.255 Globally-scoped (Internet-wide) multicast addresses
- 239.0.0.0 - 239.255.255.255 Local multicast addresses
Well known multicast addresses are listed at http://www.iana.org/assignments/multicast-addresses/multicast-addresses.xhtml
Multicast addresses use a destination Mac-address in the range from
01:00:5E:00:00:00 to 01:00:5E:7F:FF:FF
The IP address maps directly to a Mac address.
The lower 23 Bits of the multicast IPv4 Address are added
to the lower 23 Bits of the Mac address. Example: 224.0.0.210 would
be send to the Mac address 01:00:5E:00:00:D2.
Ethernet frames with a value of 1 in the least-significant bit
of the first octet of the destination address (logical AND with
01:00:00:00:00:00) are sent to all ports on the same switch unless the
switch is VLAN aware and there is a VLAN tag between ethernet and IP layer.
In other words the Ethernet address and the VLAN tag define together
to which ports a packets is sent.
IPv4 special and private address ranges
Private address ranges are not routed on the Internet and
can be freely allocated in any private network. NAT (network
address translation) is required when connecting such a network
to the Internet.
Private network addresses (RFC1597/RFC1918 addresses):
- 10.0.0.0 - 10.255.255.255 A 24-bit block, /8, class A network
- 172.16.0.0 - 172.31.255.255 A 20-bit block, /12, set of 16 contiguous class B network numbers
- 192.168.0.0 - 192.168.255.255 A 16-bit block, /16, set of 255 contiguous class C network numbers
Special addresses:
- 127.0.0.0 - 127.255.255.255 Special address range for the
localhost. You can normally not use those addresses for anything else.
- 127.0.0.1 is generally assigned to the loopback device
- 0.0.0.0 Unspecified address. A special host address commonly reserved for the default route or used to indicated that no address is assigned.
2) IPv6 address types
Some of this information is taken from https://www.ripe.net/manage-ips-and-asns/ipv6/ipv6-address-types
::/128, Unspecified address
This address may only be used as a source address by an initialising host
before it has learned its own address. This is equivalent to 0.0.0.0 in ipv4.
::1/128, Loopback address
This address is used when a host talks to
itself over IPv6. This often happens when
one program sends data to another.
This is equivalent to
127.0.0.1 in ipv4.
0:0:0:0:0:FFFF:a.b.c.d/96 or ::FFFF:a.b.c.d/96, IPv4-Mapped address
Example: ::ffff:192.0.2.47
These addresses are used to embed
IPv4 addresses in an IPv6 address. One
use for this is in a dual stack transition
scenario where IPv4 addresses can be
mapped into an IPv6 address. See RFC
4038 for more details.
fc00::/7, Unique Local Addresses, private addresses
Example: fdf8:f53b:82e4::53
Unique Local Addresses (ULAs)
These addresses are reserved for local
use in home and enterprise environments
and are not public address space.
This is equivalent to the ipv4
private, or RFC 1918 address space (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16)
These addresses might not be unique,
and there is no formal address
registration. Packets with these
addresses in the source or destination
fields are not intended to be routed on
the public Internet but are intended
to be routed within the enterprise or
organisation.
See RFC 4193 for more details.
fe80::/10, Link-Local Addresses
Example:
fe80::200:5aee:feaa:20a2
These addresses are used on a single
link or a non-routed common access
network, such as an Ethernet LAN. They
do not need to be unique outside of that
link.
IPv4 equivalent:
169.254.0.0/16
Link-local addresses may appear as the
source or destination of an IPv6 packet.
Routers must not forward IPv6 packets if
the source or destination contains a linklocal address.
Link-local addresses may appear as the
source or destination of an IPv6 packet.
Routers must not forward IPv6 packets if
the source or destination contains a linklocal address.
2001:0000::/32, Teredo address
Example:
2001:0000:4136:e378:8000:63bf:3fff:fdd2
This is a mapped address allowing IPv6
tunneling through IPv4 NATs. The address is
formed using the Teredo prefix, the server's
unique IPv4 address, flags describing the type
of NAT, the obfuscated client port and the
client IPv4 address, which is probably a private
address. It is possible to reverse the process
and identify the IPv4 address of the relay server,
which can then be looked up in the relevant
RIR's Whois database.
2001:0002::/48, Benchmarking addresses
Example:
2001:0002:6c::430
These addresses are reserved for use in
documentation. They should not be used as
source or destination addresses.
2001:0010::/28, Orchid addresses
Example:
2001:10:240:ab::a
These addresses are used for a fixed-term
experiment. They should only be visible on an
end-to-end basis and routers should not see
packets using them as source or destination
addresses.
2002::/16, 6to4
Example:
2002:cb0a:3cdd:1::1
6to4
A 6to4 gateway adds its IPv4 address to this
2002::/16, creating a unique /48 prefix. As the
IPv4 address of the gateway router is used to
compose the IPv6 prefix, it is possible to reverse
the process and identify the IPv4 address, which
can then be looked up in the relevant RIR's
Whois database.
There is no equivalent in IPv4 but
192.88.99.0/24 has been reserved as
the 6to4 relay anycast address prefix
by the IETF.
2001:db8::/32, Documentation addresses
Example:
2001:db8:8:4::2
These addresses are used in examples and
documentation. They should never be source or
destination addresses.
IPv4 equivalent: 192.0.2.0/24, 198.51.100.0/24, 203.0.113.0/24
2000::/3, Global Unicast address
The operators of networks using these
addresses can be found using the Whois servers
of the RIRs listed in the registry at:
http://www.iana.org/assignments/ipv6unicast-address-assignments
ff00::/8, Multicast addresses
Example:
ff01:0:0:0:0:0:0:2
These addresses are used to identify multicast
groups. They should only be used as destination
addresses, never as source addresses.
The IPv4 equivalent is 224.0.0.0/4.
Written by Guido Socher, MIT license