class Gem::Resolv::IPv4 - rubygems: Ruby Standard Library Documentation

# class Gem::Resolv::IPv4

A `Gem::Resolv::DNS` `IPv4` address.

### Constants

Regex
Regex256

  Regular expression `IPv4` addresses must match.

### Attributes

address[R]

The raw `IPv4` address as a String.

### Public Class Methods

create(arg) click to toggle source

    # File rubygems/vendor/resolv/lib/resolv.rb, line 2910
    def self.create(arg)
      case arg
      when IPv4
        return arg
      when Regex
        if (0..255) === (a = $1.to_i) &&
           (0..255) === (b = $2.to_i) &&
           (0..255) === (c = $3.to_i) &&
           (0..255) === (d = $4.to_i)
          return self.new([a, b, c, d].pack("CCCC"))
        else
          raise ArgumentError.new("IPv4 address with invalid value: " + arg)
        end
      else
        raise ArgumentError.new("cannot interpret as IPv4 address: #{arg.inspect}")
      end
    end

### Public Instance Methods

to_name() click to toggle source

Turns this `IPv4` address into a `Gem::Resolv::DNS::Name`.

    # File rubygems/vendor/resolv/lib/resolv.rb, line 2957
    def to_name
      return DNS::Name.create(
        '%d.%d.%d.%d.in-addr.arpa.' % @address.unpack('CCCC').reverse)
    end