class IPAddress::IPv6::Unspecified

The address with all zero bits is called the unspecified address (corresponding to 0.0.0.0 in IPv4). It should be something like this:

0000:0000:0000:0000:0000:0000:0000:0000

but, with the use of compression, it is usually written as just two colons:

::

or, specifying the netmask:

::/128

With IPAddress, create a new unspecified IPv6 address using its own subclass:

ip = IPAddress::IPv6::Unspecified.new

ip.to_s
  #=> => "::/128"

You can easily check if an IPv6 object is an unspecified address by using the IPAddress::IPv6#unspecified? method

ip.unspecified?
  #=> true

An unspecified IPv6 address can also be created with the wrapper method, like we've seen before

ip = IPAddress "::"

ip.unspecified?
  #=> true

This address must never be assigned to an interface and is to be used only in software before the application has learned its host's source address appropriate for a pending connection. Routers must not forward packets with the unspecified address.

Public Class Methods

new() click to toggle source

Creates a new IPv6 unspecified address

ip = IPAddress::IPv6::Unspecified.new

ip.to_s
   #=> => "::/128"
# File lib/ipaddress/ipv6.rb, line 692
def initialize
  @address = ("0000:"*8).chop
  @groups = Array.new(8,0)
  @prefix = Prefix128.new(128)
  @compressed = compress_address
end