Is 0.1.2.3 a valid IP address?
Are IP addresses with all zeroes in the first octet valid?
For example, can 0.1.2.0/24
be a valid subnet, with network address 0.1.2.0
, broadcast address 0.1.2.255
and an usable address range from 0.1.2.1
to 0.1.2.254
?
It looks like it should be valid, but it doesn't work, at least on Windows systems.
If it's not valid, then why?
RFC1122, Requirements for Internet Hosts -- Communication Layers, says:
{ <Network-number>, <Host-number> }
(a) { 0, 0 }
This host on this network. MUST NOT be sent, except as
a source address as part of an initialization procedure
by which the host learns its own IP address.
See also Section 3.3.6 for a non-standard use of {0,0}.
(b) { 0, <Host-number> }
Specified host on this network. It MUST NOT be sent,
except as a source address as part of an initialization
procedure by which the host learns its full IP address.
Looks like 0.0.0.0/8 is in the list of IANA Reserved subnets.
- http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml, the list of IANA reserved addresses, since this one dates far enough back (1981!) to have been an IANA reserved address range.
- https://www.rfc-editor.org/rfc/rfc5735, describing special uses of IPv4, of which this subnet is a member. The most-current list of special subnets, including the subnets reserved for documentation purposes.
- https://www.rfc-editor.org/rfc/rfc1122#section-3.2.1.3, which describes the specific usage of the 0/8 network.
Per RFC 5735, 0.0.0.0/8 is a reserved IP address range, as follows:
0.0.0.0/8 - Addresses in this block refer to source hosts on "this" network. Address 0.0.0.0/32 may be used as a source address for this host on this network; other addresses within 0.0.0.0/8 may be used to refer to specified hosts on this network [RFC1700, page 4].
According to RFC 1700 - "Assigned Numbers", "Special Addresses" section, a network number of 0 can only be used as a source address, and represents a host on the same network. Therefore it is invalid to assign an address of this type to an interface.