<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=LinuxProgramming%2FQueryDomainname</id>
	<title>LinuxProgramming/QueryDomainname - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.zeropage.org/index.php?action=history&amp;feed=atom&amp;title=LinuxProgramming%2FQueryDomainname"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=LinuxProgramming/QueryDomainname&amp;action=history"/>
	<updated>2026-05-15T10:04:30Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.8</generator>
	<entry>
		<id>https://mediawiki.zeropage.org/index.php?title=LinuxProgramming/QueryDomainname&amp;diff=34188&amp;oldid=prev</id>
		<title>imported&gt;Unknown at 05:23, 7 February 2021</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.zeropage.org/index.php?title=LinuxProgramming/QueryDomainname&amp;diff=34188&amp;oldid=prev"/>
		<updated>2021-02-07T05:23:38Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= sample code =&lt;br /&gt;
 /**&lt;br /&gt;
 request domain name thru ip address from DNS server&lt;br /&gt;
 &lt;br /&gt;
 eternalbleu&lt;br /&gt;
 &lt;br /&gt;
 2006 03 23&lt;br /&gt;
 &lt;br /&gt;
 **/&lt;br /&gt;
 #include &amp;amp;lt;stdio.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;stdlib.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;string.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;sys/types.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;arpa/inet.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;netdb.h&amp;amp;gt;&lt;br /&gt;
 #include &amp;amp;lt;unistd.h&amp;amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 void error_handling(const char* message);&lt;br /&gt;
 &lt;br /&gt;
 int main(int argc, char ** argv)&lt;br /&gt;
 {&lt;br /&gt;
   struct hostent* host;&lt;br /&gt;
   struct sockaddr_in addr;&lt;br /&gt;
   int i;&lt;br /&gt;
   &lt;br /&gt;
   if (argc != 2) {&lt;br /&gt;
     printf(&amp;quot;USAGE : %s &amp;amp;lt;ip&amp;amp;gt;\n&amp;quot;, argv[0]);&lt;br /&gt;
     exit(1);&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
   memset(&amp;amp;amp;addr, 0, sizeof(addr));&lt;br /&gt;
   addr.sin_addr.s_addr=inet_addr(argv[1]);&lt;br /&gt;
 &lt;br /&gt;
   host = gethostbyaddr((char*)&amp;amp;amp;addr.sin_addr, 4, AF_INET);&lt;br /&gt;
   if(!host)&lt;br /&gt;
     error_handling(&amp;quot;gethost... error&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
   printf(&amp;quot;Officially name : %s \n\n&amp;quot;, host-&amp;amp;gt;h_name);&lt;br /&gt;
 &lt;br /&gt;
   puts(&amp;quot;Aliases ------&amp;quot;);&lt;br /&gt;
   for(i=0; host-&amp;amp;gt;h_aliases[i]; i++) {&lt;br /&gt;
     puts(host-&amp;amp;gt;h_aliases[i]);&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
   printf(&amp;quot;Address Type:$s\n&amp;quot;, host-&amp;amp;gt;h_addrtype == AF_INET? &amp;quot;AF_INET&amp;quot;:&amp;quot;AF_INET6&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
   puts(&amp;quot;IP Address ------&amp;quot;);&lt;br /&gt;
   for(i=0; host-&amp;amp;gt;h_addr_list[i]; i++) {&lt;br /&gt;
     puts(inet_ntoa( *(struct in_addr*)host-&amp;amp;gt;h_addr_list[i]));&lt;br /&gt;
   }&lt;br /&gt;
 &lt;br /&gt;
   return 0;&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 void error_handling(const char* message)&lt;br /&gt;
 {&lt;br /&gt;
   fputs(message, stderr);&lt;br /&gt;
   fputc(&amp;#039;\n&amp;#039;, stderr);&lt;br /&gt;
   exit(1);&lt;br /&gt;
 }&lt;br /&gt;
표준 BSD socket 을 이용한 소스. 리눅스에서 컴파일해야함. 대충 바꾸면 윈도우에서도 할 수 잇음.&lt;/div&gt;</summary>
		<author><name>imported&gt;Unknown</name></author>
	</entry>
</feed>