类 Resolv::MDNS

Resolv::MDNS 是一个一次性的多播 DNS (mDNS) 解析器。它盲目地向 mDNS 地址发出查询,而不了解任何关于多播端口的信息。

信息来自以下地方

常量

AddressV4

默认 IPv4 mDNS 地址

AddressV6

默认 IPv6 mDNS 地址

Addresses

默认 mDNS 地址

Port

默认 mDNS Port

公共类方法

new(config_info=nil) 点击切换源代码

创建一个新的单次多播 DNS (mDNS) 解析器。

config_info 可以是

nil

使用默认的 mDNS 地址

Hash

必须包含 :nameserver 或 :nameserver_port,类似于 Resolv::DNS#initialize。

调用超类方法 Resolv::DNS::new
# File lib/resolv.rb, line 3118
def initialize(config_info=nil)
  if config_info then
    super({ nameserver_port: Addresses }.merge(config_info))
  else
    super(nameserver_port: Addresses)
  end
end

公共实例方法

each_address(name) 点击切换源代码

迭代从 mDNS 解析器检索到的 name 的所有 IP 地址,前提是名称以“local”结尾。如果名称不以“local”结尾,则不会返回任何记录。

name 可以是 Resolv::DNS::NameString。检索到的地址将是 Resolv::IPv4Resolv::IPv6

调用超类方法 Resolv::DNS#each_address
# File lib/resolv.rb, line 3134
def each_address(name)
  name = Resolv::DNS::Name.create(name)

  return unless name[-1].to_s == 'local'

  super(name)
end