inet_addr(3)
ÃÑ ÆäÀÌÁö ¼ö : 3224

Àüü ÇÔ¼ö/¿ë¾î»çÀü
Facebook Joinc ±×·ì   Joinc QA »çÀÌÆ®
ÇöÀçÀ§Ä¡ : docbook>inet_addr(3)



joinc´Â Firefox¿Í chrome¿¡¼­ Å×½ºÆ® Çß½À´Ï´Ù. IE¿¡¼­´Â Å×À̺íÀÌ ±úÁö°Å³ª À̹ÌÁö°¡ º¸ÀÌÁö ¾ÊÀ» ¼ö ÀÖ½À´Ï´Ù. ƯÈ÷ ±¸±Û DocsÀ̹ÌÁöÀÇ °æ¿ì ¿¢¹Úó¸®µÉ ¼ö ÀÖ½À´Ï´Ù.
HTML º¯È¯¹®¼­

<!DOCTYPE chapter PUBLIC "-//OASIS//DTD DocBook V4.1//EN"> 
<chapter lang=ko> 
<!-- ÀÛ¼ºÀÚ : yundream             --> 
<!-- ÀÛ¼ºÀÏ : 2004/01/03           --> 
<!-- ¿¬¶ôó : dreamyun@yahoo.co.kr --> 
 
<!-- ÇÔ¼ö À̸§À» ÀÔ·ÂÇÕ´Ï´Ù --> 
<title>inet_addr(3)</title> 
 
<!-- ÀÌ°Ç ÇÔ¼ö¿¡ ´ëÇÑ ´ë·«ÀûÀÎ ¼³¸íÀ̱¸¿ä --> 
<para> 
    ÀÎÅÍ³Ý ÁÖ¼Ò¸¦ º¯È¯ÇÑ´Ù. 
</para> 
  
<!-- ¿©±â¿¡ ÇÔ¼öÀÇ °£´ÜÇÑ »ç¿ë¹ýÀÌ µé¾î°©´Ï´Ù --> 
<section> 
    <title>»ç¿ë¹ý</title> 
    <para> 
        <screen> 
#include <sys/socket.h> 
#include <netinet/in.h> 
#include <arpa/inet.h> 
 
in_addr_t inet_addr(const char *cp); 
int inet_aton(const char *cp, struct in_addr *inp); 
in_addr_t inet_network(const char *cp); 
char *inet_ntoa(struct in_addr in); 
        </screen> 
    </para> 
</section> 
 
<!-- ¿©±â¿£ ÇÔ¼öÀÇ ÀÚ¼¼ÇÑ ¼³¸í ÀÌ µé¾î°©´Ï´Ù --> 
<section> 
    <title>¼³¸í</title> 
    <para> 
        inet_addr()ÇÔ¼ö´Â (Á¡¹ÚÀÌ 3ÇüÁ¦)ÀÎÅÍ³Ý ÁÖ¼Ò <emphasis>cp</emphasis>¸¦ 
        32bit ¹ÙÀ̳ʸ® ÁÖ¼Ò·Î º¯°æÇѰªÀ» ¸®ÅÏÇÑ´Ù. ¸®ÅÏµÈ °ªÀº ³×Æ®¿öÅ© ¹ÙÀÌÆ® ¿À´õ¸¦  
        µû¸¥´Ù. ¸¸¾à À߸øµÈ °ªÀ» ÀÔ·ÂÇß´Ù¸é INADDR_NONE(-1)À» ¸®ÅÏÇÑ´Ù.  
        ÀÌ ÇÔ¼ö´Â ÀÔ·ÂÀ» Á¦´ë·Î °Ë»çÇÒ ¼ö ¾øÀ¸¹Ç·Î °¡´ÉÇϸé ÀÌ ÇÔ¼öº¸´Ù  
        inet_aton()À» »ç¿ëÇϱ⠹ٶõ´Ù. ¿Ö³ÄÇÏ¸é ¸®ÅϵǴ °ª -1Àº 255.255.255.255·Î ¿Ã¹Ù¸¥  
        ÁÖ¼Ò¸¦ ³ªÅ¸³»±â ¶§¹®ÀÌ´Ù. inet_aton()Àº ¿¡·¯ üũ¸¦ À§ÇÑ È®½ÇÇÑ ¹æ¹ýÀ» Á¦°øÇÑ´Ù.  
    </para> 
    <para> 
        inet_aton()ÇÔ¼ö´Â inet_addr()ÀÇ º¸´Ù ÃֽйöÁ¯ÀÌ´Ù. inet_aton()Àº ÁÖ¾îÁø ÀÎÅÍ³Ý ÁÖ¼Ò 
        <emphasis>cp</emphasis>¸¦ º¯°æÇÑ °ªÀ» <emphasis>inp</emphasis>¿¡ º¹»çÇÑ´Ù. À߸øµÈ  
        ÀÎÅÍ³Ý ÁÖ¼Ò¸¦ ÀÔ·ÂÇßÀ» °æ¿ì 0À» ¸®ÅÏÇÑ´Ù. º¯È¯°ª°ú ¸®ÅϰªÀÌ ºÐ¸®µÇ¾î ÀÖÀ¸¹Ç·Î  
        º¸´Ù È®½ÇÇÑ ÀԷ üũ°¡ °¡´ÉÇÏ´Ù. 
    </para> 
    <para> 
        inet_network()ÇÔ¼ö´Â ÀÎÅÍ³Ý ÁÖ¼Ò <emphasis>cp</emphasis>¿¡ ´ëÇÑ È£½ºÆ® ¹ÙÀÌÆ® ¿À´õ¸¦  
        µû¸£´Â ¹ÙÀ̳ʸ® ÁÖ¼Ò°ªÀ» ¸®ÅÏÇÏ´Â °É Á¦¿ÜÇϸé inet_addr()°ú µ¿ÀÏÇÏ´Ù.   
    </para> 
    <para> 
        inet_ntoa()´Â <emphasis>in</emphasis>ÀÇ ¹ÙÀ̳ʸ® ÀÎÅÍ³Ý ÁÖ¼Ò¸¦ Á¡¹ÚÀÌ 3ÇüÁ¦  
        ÀÎÅÍ³Ý ÁÖ¼Ò·Î º¯°æÇÑ ´ÙÀ½ µÇµ¹·ÁÁØ´Ù. ÀԷµǴ °ªÀº ³×Æ®¿öÅ© ¹ÙÀÌÆ® ¿À´õ¸¦  
        µû¶ó¾ß ÇÑ´Ù.  
    </para> 
    <para> 
        <emphasis>in_addr</emphasis>±¸Á¶Ã¼´Â <emphasis>netinet/in.h</emphasis>¿¡ Á¤ÀÇµÇ¾î  
        ÀÖ´Ù.  
        <screen> 
struct in_addr 
{ 
    unsigned long int s_addr; 
} 
        </screen> 
    </para> 
</section> 
 
<!-- ¸¶Áö¸·À¸·Î ¿¡Á¦ ÀÔ´Ï´Ù                                                 --> 
<!-- ¿©±â¿¡´Â ¿ÏÀüÇÑ ¿¹Á¦°¡ µé¾î°¡ Àִµ¥, ±»ÀÌ ¿ÏÀüÇÑ ¿¹Á¦¸¦ ¸¸µéÇÊ¿ä ¾øÀÌ --> 
<!-- ÄÚµå ÀϺκи¸ ÀÛ¼ºÇؼ­ ¿Ã·ÁÁּŵµ µË´Ï´Ù                               -->  
<!-- "<", ">", "&" µîÀº º¯È¯ÇØ ÁÖ¼Å¾ß Çϴµ¥, ±ÍÂúÀ¸½Ã¸é :-) º¯È¯ ÇÏÁö ¾Ê   --> 
<!-- ¾Æµµ µË´Ï´Ù. Á¦°¡ °Ë»ç ÇØ¼­ ¿Ã¸®°Ú½À´Ï´Ù                               --> 
<!-- ¿¹Á¦¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸íÀ» Àû¾îÁּŵµ µÇ±¸¿ä                            --> 
<section> 
    <title>¿¹Á¦</title> 
    <para> 
        <screen> 
#include <sys/socket.h> 
#include <netinet/in.h> 
#include <arpa/inet.h> 
#include <string.h> 
#include <stdio.h> 
 
int main(int argc, char **argv) 
{ 
    char buf[256]; 
    struct in_addr laddr; 
    int stat; 
 
    while(1) 
    { 
        // ÀÎÅÍ³Ý ÁÖ¼Ò¸¦ ÀÔ·Â ¹Þ´Â´Ù. 
        printf("INPUT ADDRESS : "); 
        fgets(buf, 255, stdin); 
 
        buf[strlen(buf) -1] = 0x00; 
        if (strcmp(buf, "quit") == 0) break; 
 
        stat = inet_aton(buf, &laddr); 
        if (!stat) 
        { 
            printf("Format Error\n"); 
        } 
        else 
        { 
            printf("inet_addr    : %s => %d\n", buf, laddr.s_addr); 
            printf("inet_ntoa    : %d => %s\n", laddr.s_addr, inet_ntoa(laddr));  
        } 
    } 
    return 0; 
} 
        </screen> 
    </para> 
</section> 
<section> 
    <title>Âü°í¹®Çå</title> 
    <para> 
        <orderedlist> 
            <listitem> 
                <para> 
                    <ulink url="http://www.joinc.co.kr/modules.php?name=News&file=article&sid=79">Endian¿¡ ´ëÇØ¼­</ulink> 
                </para> 
            </listitem> 
            <listitem> 
                <para> 
                    <ulink url="http://www.joinc.co.kr/modules.php?name=News&file=article&sid=57">Socket Layer</ulink> 
                </para> 
            </listitem> 
        </orderedlist> 
    </para> 
</section> 
</chapter> 
 
 
EmailÀ» ±âÀÔÇϸé, ´ñ±ÛÀÌ ¸ÞÀÏ·Î Àü´ÞµË´Ï´Ù.