Issue #11144 has been reported by Nikolay Markov.

----------------------------------------
Backport #11144: Backport 49095 into ruby 2.1
https://bugs.ruby-lang.org/issues/11144

* Author: Nikolay Markov
* Status: Open
* Priority: Normal
* Assignee: 
----------------------------------------
Right now resolv cannot resolve IPv6 address to hostname in ruby 2.1

~~~
markov@cauth01:~$ ruby -v
ruby 2.1.6p336 (2015-04-13 revision 50298) [x86_64-linux-gnu]


markov@cauth01:~$ host 2a02:6b8::11
1.1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.b.6.0.2.0.a.2.ip6.arpa domain name pointer yandex.ru.`


markov@cauth01:~$ cat test.rb 
#!/usr/bin/ruby

require 'resolv'
Resolv.getname('2a02:6b8::11')


markov@cauth01:~$ ./test.rb 
/usr/lib/ruby/2.1.0/resolv.rb`128:in `getname': no name for 2a02:6b8::11 (Resolv::ResolvError)
	from /usr/lib/ruby/2.1.0/resolv.rb:64:in `getname'
	from ./test.rb:5:in `<main>'
~~~

This is because Resolv::IPv6#to_name (https://bugs.ruby-lang.org/projects/ruby-21/repository/entry/lib/resolv.rb#L2506) creates Resolv::DNS::Name with an array of strings, however other instances are created with an array of Resolv::Label::Str.
This behaviour is fixed in commit https://bugs.ruby-lang.org/projects/ruby-trunk/repository/revisions/49095 where labels of Resolv::DNS::Name are normalized, but this commit is not backported to ruby 2.1

However backporting this https://bugs.ruby-lang.org/projects/ruby-21/repository/revisions/49775 introduced the issue



-- 
https://bugs.ruby-lang.org/