--- Socket.getnameinfo(sa[, flags])

    RFC:2553 줿getnameinfo() εǽ󶡤륯
    饹᥽åɡ gethostbyaddr()  getservbyport() 
    ȤѰդƤޤIPΥС˰¸ʤץ
    񤯤ɸŪAPIǤ

    ֤Ǥϥɥ쥹ȥݡȤɽʸǤ

     sa ˤʸͿޤʸξ sockaddr ¤
    ΥѥåʸͿޤŪˤ getsockaddr 
    ͤѤǤޤͿˤϡǤ3Ĥξ4Ĥξ
    ޤ

    * Ǥ3Ĥξ:
         [ɥ쥹եߥ꡼, ӥ, ۥ]
    * Ǥ4Ĥξ:
         [ɥ쥹եߥ꡼, ӥ, Ǥ, ɥ쥹ɽʸ]

    ɥ쥹եߥ꡼ˤ Socket::AF_INET ¾ʸ
     "AF_INET" ⤷ "AF_INET6" ⤷ nil 
    ǤޤIPv6Ȥʤ褦˥ѥ뤵Ƥ 
    "AF_INET6" ̵ʻȤʤޤɥ쥹եߥ꡼ 
    nil ꤹ뤳Ȥ Socket::AF_UNSPEC ꤹ뤳
    Ǥ

    ӥۥȤλ˴ؤƤ ӥ
    ۥȻ򻲾ȤƤ

    Ǥ3ĤξǤ⡢ۥȤˤϥɥ쥹ǤޤǤ4
    ξˤϡǸǤ̾褷ʤȤݾڤޤ

    άǽ2 flags ˤ getnameinfo(3) [manual page] 
    7ܤΰ˻ꤹ flags  Fixnum Ϳޤ

    flags뤿Ȥ
    Socket::NI_MAXHOST
    Socket::NI_MAXSERV
    Socket::NI_NOFQDN
    Socket::NI_NUMERICHOST
    Socket::NI_NAMEREQD
    Socket::NI_NUMERICSERV
    Socket::NI_DGRAM
    ѰդƤ礬ޤ

    ΰ̣ˤĤƤ getnameinfo(3) [manual page]򻲾
    Ʋ

    :
      Socket.getnameinfo(Socket.sockaddr_in('21','127.0.0.1
      #=> ["localhost", "ftp"]

      Socket.getnameinfo([nil, 21,'127.0.0.1'])
      #=> ["localhost", "ftp"]

