|
---|
D.M.Z
CONTENT
PRE
NEXT
7.1 General Requirements ½Ã¸®¾ó ¶óÀÎ ÇÁ·ÎÅäÄÝÀÎ SLIP°ú PPP´Â °¡³ÇÑ À̵µ ÀÎÅͳݿ¡ ¿¬°áÇÒ ¼ö ÀÖ°Ô ÇØÁØ´Ù. ¸ðµ©°ú FIFO ¹öÆÛ¸¦ ÀåºñÇÑ ½Ã¸®¾ó º¸µå¿Ü¿£ ¾î¶°ÇÑ Çϵå¿þ¾îµµ ÇÊ¿äÄ¡ ¾Ê´Ù. ±×°ÍÀ» »ç¿ëÇÏ´Â °ÍÀº mailboxº¸´Ù º¹ÀâÇÏÁöµµ ¾Ê°í, ¶ÇÇÑ ¸ðµç»ç¶÷ÀÌ ÁöºÒÇÒ ¼ö ÀÖÀ» Á¤µµÀÇ °¡°Ý¿¡ ´ÙÀ̾ó¾÷ IP¸¦ Á¦°øÇÏ´Â °³º°Á¶Á÷ÀÇ ¼ö°¡ ´Ã¾î³ª°í ÀÖ´Ù. ¸®´ª½º¿¡¼± SLIP°ú PPP µå¶óÀ̹ö ¸ðµÎ Áö¿øµÈ´Ù. SLIPÀº Áö¿øµÈÁö ²Ï ¿À·¡µÇ¾ú°í, »ó´çÈ÷ ½Å·Ú¼º ÀÖ°Ô µ¿ÀÛÇÑ´Ù. PPP µå¸®À̹ö´Â ÇöÀç Michael Callahan°ú AI Longyear¿¡ ÀÇÇØ °³¹ßÁßÀÌ´Ù. ±×°Í¿¡ ´ëÇؼ± ´ÙÀ½ Àå¿¡¼ Àû°íÀÚ ÇÑ´Ù.
SLIPÀ̳ª PPP¸¦ »ç¿ëÇϱâ À§Çؼ±, ÀÌÀü Àå¿¡¼ ¾ê±âÇÏ¿´´ø ¸î°¡Áö ±âº»ÀûÀÎ ³×Æ®¿÷ ±â´ÉÀ» ¼³Á¤ÇØ ÁÖ¾î¾ß¸¸ ÇÑ´Ù. Àû¾îµµ loopback ÀÎÅÍÆäÀ̽º¸¦ ¼Â¾÷ÇÏ°í name resolutionÁ¤µµ´Â Á¦°øÇؾßÇÑ´Ù. ÀÎÅͳݿ¡ ¿¬°áÇÒ ¶§, ´ç½ÅÀº ¹°·Ð DNS¸¦ »ç¿ëÇÏ°íÀÚ ÇÒ °ÍÀÌ´Ù. °¡Àå ´Ü¼øÇÑ ÇØ°á¹æ¹ýÀº resolv.conf ÆÄÀÏ¿¡ ¸î¸î ³×ÀÓ¼¹öÀÇ ÁÖ¼Ò¸¦ Áý¾î ³ÖÀº °ÍÀ¸·Î, SLIP ¸µÅ©°¡ È°¼ºÈµÇ¸é °ð¹Ù·Î ÀÌµé ¼¹ö¿¡ Äõ¸®¸¦ º¸³¾ °ÍÀÌ´Ù. ³×ÀÓ¼¹ö°¡ ´ç½ÅÀÌ dial inÇÏ´Â ÁöÁ¡°ú °¡±î¿î °÷¿¡ ÀÖÀ» ¼ö·Ï ÁÁ´Ù. ±×·¯³ª, ÀÌ·¯ÇÑ ÇØ°áÃ¥ÀÌ ÃÖÀûÀÌÁø ¾Ê´Ù. ¿Ö³ÄÇÏ¸é ¸ðµç ³×ÀÓ °Ë»öÀÌ ¿©ÀüÈ÷ ´ç½ÅÀÇ SLIP/PPP ¸µÅ©¸¦ ÅëÇØ Áö³ª±â ¶§¹®ÀÌ´Ù. ¸¸¾à ÀÌ¿¡ ¼ÒºñµÇ´Â bandwidth°¡ ¾Æ±õ´Ù°í »ý°¢µÇ¸é, ´ç½ÅÀº caching-only ³×ÀÓ¼¹ö¸¦ ¼Â¾÷ÇÒ ¼ö ÀÖ´Ù. ±×°ÍÀº ÇϳªÀÇ µµ¸ÞÀÎÀ» ½ÇÁ¦·Î Á¦°øÇÏÁø ¾ÊÁö¸¸, ´ç½ÅÀÇ È£½ºÆ®¿¡¼ ¸¸µé¾î³»´Â ¸ðµç DNS Äõ¸®¿¡ ´ëÇÑ ¸±·¹ÀÌó·³ µ¿ÀÛÇÑ´Ù. ÀÌ·¯ÇÑ ±¸Á¶ÀÇ ÀÕÁ¡Àº, ij½¬¸¦ ¸¸µêÀ¸·Î½á ´ëºÎºÐÀÇ Äõ¸®°¡ Çѹø¸¸ ½Ã¸®¾ó ¶óÀÎÀ» ÅëÇØ º¸³»Áö´Â °ÍÀÌ´Ù. caching-only ¼¹ö¸¦ »ç¿ëÇϵµ·Ï ¼³Á¤µÈ named.bootÆÄÀÏÀº ´ÙÀ½°ú °°´Ù. ; named.boot file for caching-only server directory /var/named primary 0.0.127.in-addr.arpa db.127.0.0 ; loopback net cache . db.cache ; root servers named.boot ÆÄÀÏ°ú ´õºÒ¾î, db.cache ÆÄÀÏ¿¡ ÀûÀýÇÑ root ³×ÀÓ¼¹ö¸¦ ³Ö¾îÁÖ¾î ¼Â¾÷ÇØ¾ß ÇÑ´Ù. ÀÌ´Â Resolver Configuraton ÀåÀÇ ¸¶Áö¸· ºÎºÐ¿¡¼ ±â¼úÇÑ ¹Ù ÀÖ´Ù.
´ÙÀ̾ó¾÷ IP ¼¹öµéÀº Á¾Á¾ Ư¼öÇÑ °èÁ¤À» ÅëÇØ SLIP ¼ºñ½º¸¦ Á¦°øÇÑ´Ù. ±×¿Í °°Àº °èÁ¤À¸·Î ·Î±×ÀÎÇØ µé¾î°¡¸é Ä¿¸Çµå ½©·Î µé¾î°¡´Â °ÍÀÌ ¾Æ´Ï¶ó, ´ë½Å ½Ã¸®¾ó ¶óÀο¡ ´ëÇÑ ¼¹öÀÇ SLIP µå¶óÀ̹ö¸¦ ±¸µ¿ÇÏ°í °íÀ¯ÀÇ ³×Æ®¿÷ ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇÏ´Â ÇÁ·Î±×·¥À̳ª ½© ½ºÅ©¸³Æ®°¡ ½ÇÇàµÈ´Ù. ±×·¯¸é ´ç½ÅÂÊ¿¡¼µµ ºñ½ÁÇÑ ÀÏÀ» ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ¾î¶² ¿î¿µÃ¼Á¦ »ó¿¡¼±, SLIP µå¶óÀ̹ö°¡ user-space ÇÁ·Î±×·¥ÀÌ´Ù; ¸®´ª½º¿¡¼ ±×°ÍÀº Ä¿³ÎÀÇ ÀϺÎÀ̸ç, ÀÌ °æ¿ì°¡ ´õ ºü¸¥ ¼Óµµ¸¦ ³½´Ù. ±×·¯³ª ÀÌ¿¡´Â ½Ã¸®¾ó ¶óÀÎÀÌ SLIP ¸ðµå·Î ¸í¹éÈ÷ ÀüȯµÇ¾î¾ßÇÒ ÇÊ¿ä°¡ ÀÖÀ¸¸ç, À̴ Ư¼öÇÑ tty ¶óÀÎ ±ÔÀ²(line discipline)ÀÎ SLIPDISC¿¡ ÀÇÇØ ÀÌ·ç¾îÁø´Ù. tty°¡ º¸ÅëÀÇ ¶óÀÎ ±ÔÀ²(DISC0)¿¡ ÅëÁ¦ ¹Þ´Â °æ¿ì, ±×°ÍÀº º¸ÅëÀÇ read(2)¿Í write(2)¸¦ »ç¿ëÇÏ¿© ¿ÀÁ÷ »ç¿ëÀÚ ÇÁ·Î¼¼½º¿Í µ¥ÀÌÅ͸¦ ±³È¯ÇÒ °ÍÀÌ°í, ±×·¯¸é SLIP µå¶óÀ̹ö´Â tty¿¡ ÀÐ°í ¾²±â¸¦ ÇÒ ¼ö ¾ø´Ù. SLIPDISC ³»¿¡¼ ¿ªÇÒÀº ¹ÝÀüµÈ´Ù. Áï, ÀÌÁ¦ user-space ÇÁ·Î¼¼½º´Â tty¿¡ ÀÐ°í ¾²±â°¡ Â÷´ÜµÇ¸ç ½Ã¸®¾ó Æ÷Æ®·Î µé¾î¿À´Â ¸ðµç µ¥ÀÌÅÍ´Â SLIP µå¶óÀ̹ö¿¡ Á÷Á¢ ³Ñ°ÜÁú °ÍÀÌ´Ù. SLIP µå¶óÀ̹ö ÀÚü´Â SLIP ÇÁ·ÎÅäÄÝÀÇ ´Ù¾çÇÑ º¯Á¾À» ÀÌÇØÇÑ´Ù. º¸ÅëÀÇ SLIP°ú´Â º°°³·Î, ±×°ÍÀº CSLIP, Áï ¼ÛÃâµÇ´Â IP ÆÐŶ¿¡ ´ëÇØ Van Jacobson compressionÀ̶ó ºÒ¸®´Â °ÍÀ» ¼öÇàÇÏ´Â °Í, ¿ª½Ã ÀÌÇØÇÑ´Ù. ÀÌ´Â ÀÎÅÍ·¢Æ¼ºê ¼¼¼ÇÀÇ Ã³¸®·®À» Çâ»ó½ÃÄ×°í, °Ô´Ù°¡ À̵é ÇÁ·ÎÅäÄÝ °¢°¢¿¡ ´ëÇÑ six-bit ¹öÀüµµ Á¸ÀçÇÑ´Ù. ½Ã¸®¾ó ¶óÀÎÀ» SLIP ¸ðµå·Î ÀüȯÇÏ´Â °¡Àå ´Ü¼øÇÑ ¹æ¹ýÀº slattachÅøÀ» »ç¿ëÇÏ´Â °ÍÀÌ´Ù. ´ç½ÅÀÇ ¸ðµ©ÀÌ /dev/cua3¿¡ ´Þ·ÁÀÖ°í, SLIP ¼¹ö¿¡ ¼º°øÀûÀ¸·Î ·Î±×ÀÎÇØ µé¾î°¬´Ù¸é, ÀÌ·¸°Ô ½ÇÇàÇÏ¸é µÈ´Ù. # slattach /dev/cua3 & ÀÌ´Â cua3ÀÇ ¶óÀÎ ±ÔÀ²À» SLIPDISC·Î ÀüȯÇÏ°í, ±×°ÍÀ» SLIP ³×Æ®¿÷ ÀÎÅÍÆäÀ̽ºÁß Çϳª¿¡ ºÙÀÏ °ÍÀÌ´Ù. ¸¸¾à ÀÌ°ÍÀÌ Ã¹¹ø°·Î È°¼ºÈµÇ´Â SLIP ¸µÅ©¶ó¸é, ¶óÀÎÀº sl0¿¡ Á¢Çյǰí, µÎ¹ø°´Â sl1¿¡ µÇ´Â ½ÄÀÌ´Ù. ÇöÀçÀÇ Ä¿´ÃÀ» 8°³ ±îÁöÀÇ SLIP ¸µÅ©¸¦ µ¿½Ã¿¡ Áö¿øÇÑ´Ù. slattach°¡ ¼±ÅÃÇÏ´Â µðÆúÆ® ĸ½¶È(encapsulation) ¹æ½ÄÀº CSLIPÀÌ´Ù. ´Ù¸¥ ¸ðµå¸¦ ¿øÇÑ´Ù¸é -p ½ºÀ§Ä¡¸¦ »ç¿ëÇÏ¸é µÈ´Ù. normal SLIP (¾ÐÃàÈÇÏÁö ¾Ê´Â)À» »ç¿ëÇÏ·Á¸é ´ÙÀ½Ã³·³ Ç϶ó. # slattach -p slip /dev/cua3 & ±× ¿ÜÀÇ ¸ðµå·Î´Â, cslip, slip6, cslip6(SLIPÀÇ six-bit ¹öÀüÀ» À§ÇÑ °Í), ±×¸®°í adaptive SLIPÀ» À§ÇÑ <adaptive°¡ ÀÖ´Ù. ¸¶Áö¸· °ÍÀº ¸®¸ðÆ® ÂÊÀÌ »ç¿ëÇÏ´Â SLIP ĸ½¶È ¹æ½ÄÀÌ ¾î¶² °ÍÀÎÁö¸¦ Ä¿³ÎÀÌ Ã£¾Æ³»µµ·Ï ÇÑ´Ù. »ó´ëÂÊÀÌ »ç¿ëÇÏ´Â °Í°ú °°Àº ĸ½¶È ¹æ½ÄÀ» »ç¿ëÇØ¾ß ÇÑ´Ù´Â µ¥ ÁÖÀÇÇÏÀÚ. ¿¹¸¦ µé¾î, cowslipÀÌ CSLIPÀ» »ç¿ëÇÑ´Ù¸é ´ç½Åµµ ±×·¸°Ô ÇØ¾ß ÇÑ´Ù. ¼·Î ¸ÂÁö¾Ê´Â °æ¿ìÀÇ Â¡ÈÄ´Â ¸®¸ðÆ® È£½ºÆ®¿¡ ping ÇßÀ» ¶§ µÇµ¹¾Æ ¿À´Â ¾î¶°ÇÑ ÆÐŶµµ ¼ö½ÅÇÏÁö ¸øÇÏ´Â °ÍÀÌ´Ù. ¸¸¾à ´Ù¸¥ È£½ºÆ®°¡ ´ç½ÅÀÇ È£½ºÆ®¿¡ pingÇÑ´Ù¸é, ´ç½ÅÀÇ Äֿܼ¡¼ "Can't build ICMP header"¶ó´Â ¸Þ½ÃÁö¸¦ º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ³Á¦¸¦ ÇÇÇÏ´Â ¹æ¹ýÀº adaptive SLIPÀ» »ç¿ëÇÏ´Â °ÍÀÌ´Ù. »ç½Ç»ó, slattach´Â ´ÜÁö SLIP »Ó ¾Æ´Ï¶ó ½Ã¸®¾ó ¶óÀÎÀ» »ç¿ëÇÏ´Â ´Ù¸¥ ÇÁ·ÎÅäÄÝ, Áï PPP³ª KISS(ham radio »ç¿ëÀÚ°¡ ÀÌ¿ëÇÏ´Â ¶Ç´Ù¸¥ ÇÁ·ÎÅäÄÝ) ¿ª½Ã »ç¿ë°¡´ÉÇÏ°Ô ÇØ ÁØ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀ» ¿øÇÑ´Ù¸é slattach(8)¸Å´º¾ó ÆÐÀÌÁö¸¦ Âü°íÇ϶ó. ½Ã¸®¾ó ¶óÀÎÀ» SLIP µå¶óÀ̹ö¿¡ ÀΰèÇÏ°í ³ ÈÄ, ´ç½ÅÀº ³×Æ®¿÷ ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ¶Ç´Ù½Ã ¿ì¸®´Â ifconfig°ú route Ä¿¸Çµå¸¦ »ç¿ëÇÏ¿© ÀÌ·¸°Ô ÇÑ´Ù. vlager¿¡¼ cowslipÀ̶ó´Â ¼¹ö¿¡ ´ÙÀ̾ó¾÷Çß´Ù°í °¡Á¤ÇÏ°í ´ÙÀ½À» ½ÇÇàÇÏ¸é µÈ´Ù. # ifconfig sl0 vlager pointopoint cowslip # route add cowslip # route add default gw cowslip ù¹ø° Ä¿¸Çµå´Â ÀÎÅÍÆäÀ̽º¸¦ cowslipÀ¸·ÎÀÇ point-to-point¸µÅ©·Î ¼³Á¤ÇÑ´Ù. µÎ¹ø°¿Í ¼¼¹ø° Ä¿¸Çµå´Â cowslipÀ¸·ÎÀÇ ·çÆ®¸¦ Ãß°¡ÇÏ°í cowslipÀ» °ÔÀÌÆ®¿þÀÌ·Î »ç¿ëÇÏ´Â ±âº» ·çÆ®¸¦ Ãß°¡ÇÑ´Ù. SLIP ¸µÅ©¸¦ ÇØüÇÒ ¶§ , ´ç½ÅÀº °¡Àå¸ÕÀú route¿¡ del ¿É¼ÇÀ» ÁÖ°í »ç¿ëÇÏ¿© cowslipÀ» ÅëÇÏ´Â ¸ðµç ·çÆ®¸¦ Á¦°ÅÇÏ°í, ÀÎÅÍÆäÀ̽º¸¦ ÇØüÇѵÚ, slattach¿¡ hangup ½Ã±×³ÎÀ» º¸³»ÁÖ¾î¾ß ÇÑ´Ù. # route del default # route del cowslip # ifconfig sl0 down # kill -HUP 516
ÀÌÁ¦, ±×°ÍÀÌ ¾ó¸¶°£ ´Ü¼øÇÒ Áö¶óµµ, À§¿¡¼ º» ¸ðµç ´Ü°è¸¦ Ä¿¸Çµå Çϳª·Î ó¸®ÇÒ ¼ö ÀÖµµ·Ï ÇϱâÀ§ÇØ À§ ´Ü°è¸¦ ÀÚµ¿È ÇÏ±æ ¿øÇÒ °ÍÀÌ´Ù. ÀÌ°ÍÀÌ dipÀÌ Á¸ÀçÇÏ´Â ÀÌÀ¯·Î, ÀÌ ±ÛÀ» ¾²°íÀÖ´Â ÇöÀçÀÇ ¹öÀüÀº 3.3.7ÀÌ´Ù. ÀÌ°ÍÀº ¸¹Àº »ç¶÷µé¿¡ ÀÇÇØ ÇÏÁÖ ½ÉÇØ°Ô ÆÐÄ¡µÇ¾úÀ¸¹Ç·Î, dip ÇÁ·Î±×·¥¿¡ ´ëÇØ ´õÀÌ»ó ¿Ð°¡¿ÐºÎÇÒ ¼ö ¾øÀ» °ÍÀÌ´Ù. ÀÌ·¯ÇÑ ¼·Î´Ù¸¥ °³¹ßÀÇ ³ë·ÂÀº ¹Ì·¡ÀÇ ¹öÀü¿¡ ¹Ý¿µµÉ °ÍÀÌ´Ù. dipÀº ¸ðµ©À» Á¶Á¤ÇÏ°í ¶óÀÎÀ» SLIP¸ðµå·Î º¯È¯ÇÏ°í ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇÏ´Â ´Ü¼øÇÑ ½ºÅ©¸³Æ®¾ð¾îÀÇ Çؼ®±â(interpreter)¸¦ Á¦°øÇϴµ¥, ÀÌ°ÍÀº ´Ù¼Ò ¿øÁöÀûÀÌ°í Á¦ÇÑÀûÀ̳ª, °ÅÀÇ ¸ðµç °æ¿ì¸¦ ÃæÁ·½ÃŲ´Ù. dipÀÇ »õ·Î¿î ¸±¸®Áî´Â º¸´Ù Æø³ÐÀº ¿ëµµÀÇ ¾ð¾î¸¦ ¾ðÁ¨°¡ Á¦°øÇÒ °ÍÀÌ´Ù. SLIP ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤ÇÒ ¼ö ÀÖ°Ô Çϱâ À§Çؼ±, dipÀº root ±ÇÇÑÀ» ÇÊ¿ä·Î ÇÑ´Ù. ±×·¯¸é ¸ðµç»ç¿ëÀÚ¿¡°Ô root ¾ï¼¼½º¸¦ ÁÙ ÇÊ¿ä¾øÀÌ ±×µéÀÌ SLIP ¼¹ö¿¡ ´ÙÀ̾ó¾÷ÇÒ ¼ö ÀÖµµ·Ï dipÀ» root·Î setuid ÇØÁà¾ß ÇÒ °Í °°Àº ±âºÐÀÌ µé°ÚÁö¸¸, ÀÌ´Â ¸Å¿ì À§ÇèÇÑ »ý°¢ÀÌ´Ù. ¿Ö³ÄÇϸé, dipÀ¸·Î ÇãÀ§ÀÇ ÀÎÅÍÆäÀ̽º¿Í ±âº»·ÎÆ®¸¦ ¼³Á¤ÇÏ¿© ´ç½ÅÀÇ ³×Æ®¿÷ÀÇ ¶ó¿ìÆÃÀ» ºØ±«½Ãų¼ö Àֱ⠶§¹®ÀÌ´Ù. ´õ ½ÉÇÑ°æ¿ì, ÀÌ´Â »ç¿ëÀÚ°¡ ¾î¶² SLIP ¼¹ö¿¡µµ ¿¬°áÇÒ ¼ö ÀÖ´Â ±ÇÇÑÀ» ÁÖ¸ç ´ç½ÅÀÇ ³×Æ®¿÷¿¡ À§ÇèÇÑ ¾îÅÃÀ» ½ÃÀÛÇÏ°Ô ¸¸µç´Ù. ±×·¯¹Ç·Î, ¸¸¾à »ç¿ëÀÚ°¡ SLIP ¿¬°áÀ» ÇÒ ¼ö ÀÖ°Ô ÇÏ·Á¸é, dipÀÌ Æ¯Á¤ÆÄÀÏÀ» ÀÐ¾î ¿¬°áÀ» ¼ö¸³ÇÒ ¼ö ÀÖ°ÔÇÏ´Â ÀÛÀº wrapper ÇÁ·Î±×·¥À» ¿¹»óµÇ´Â SLIP ¼¹ö¸¶´Ù ¸¸µé¾î µÎ¸é µÈ´Ù. ±×·¯¸é, ÀÌ·¯ÇÑ ÇÁ·Î±×·¥Àº ¾ÈÀüÇÏ°Ô root·Î setuidµÉ¼ö ÀÖ´Â °ÍÀÌ´Ù.
# Sample dip script for dialing up cowslip # Set local and remote name and address get $local vlager get $remote cowslip port cua3 # choose a serial port speed 38400 # set speed to max modem HAYES # set modem type reset # reset modem and tty flush # flush out modem response # Prepare for dialing. send ATQ0V1E1X1\r wait OK 2 if $errlvl != 0 goto error dial 0123456789 if $errlvl != 0 goto error wait CONNECT 60 if $errlvl != 0 goto error # Okay, we're connected now sleep 3 send \r\n\r\n wait ogin: 10 if $errlvl != 0 goto error send Cvlager\r wait ssword: 5 if $errlvl != 0 goto error password #better not leave your password in ascii (thanx noud) wait running 30 if $errlvl != 0 goto error # to set up your remote and local IP get $remote remote print remote = $remote if $errlvl != 0 goto error wait to 3 get $local remote print local = $local if $errlvl != 0 goto error # We have logged in, and the remote side is firing up CSLIP. print Connected to $remote with address $rmtip default # Make this link our default route mode CSLIP # We go to CSLIP mode, too # fall through in case of error error: print CSLIP to $remote failed. ±×¸² 7.1Àº »ùÇà ½ºÅ©¸³Æ®ÀÌ´Ù. ÀÌ´Â dip¿¡ ½ºÅ©¸³Æ® ³×ÀÓÀ» ÀÎÀÚ·Î ÁÖ¾î cowslip¿¡ ¿¬°áÇϴµ¥ »ç¿ëµÈ´Ù. # dip cowslip.dip DIP: Dialup IP Protocol Driver version 3.3.7 (12/13/93) Written by Fred N. van Kempen, MicroWalt Corporation. connected to cowslip.moo.com with addr 193.174.7.129 # cowslip¿¡ ¿¬°áÇÏ°í SLIPÀ» »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ÇÏ°í³ª¸é, dipÀº Å͹̳ο¡¼ ºÐ¸®µÇ¾î ¹é±×¶ó¿îµå·Î µ¿ÀÛÇÑ´Ù. ±×·¯¸é ´ç½ÅÀº SLIP ¸µÅ©¿¡¼ ÀϹÝÀûÀÎ ³×Æ®¿öÅ· ¼ºñ½º¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¿¬°áÀ» ö°ÅÇÏ·Á¸é, -k ¿É¼ÇÀ» ÁÖ¾î dipÀ» ½ÇÇà½ÃÄѶó. ÀÌ´Â /etc/dip.pid¿¡ ÀûÈù ÇÁ·Î¼¼½º id¸¦ »ç¿ëÇÏ¿© dipÇÁ·Î¼¼½º¿¡ hangup ½Ã±×³ÎÀ» º¸³½´Ù. # dip -k dipÀÇ ½ºÅ©¸³Æ® ¾ð¾î¿¡¼ ´Þ·¯($) ½Éº¼ÀÌ ¾Õ¿¡ ºÙÀº Å°¿öµå´Â º¯¼ö¸íÀ» ³ªÅ¸³½´Ù. dipÀº ¼±Á¤µÈ(predefined) º¯¼ö ¼¼Æ®¸¦ Áö´Ï¸ç, ÀÌ´Â ¾Æ·¡¿¡ ³ª¿µÇ¾î ÀÖ´Ù. ¿¹¸¦µé·¯, $remote¿Í $localÀº SLIP ¸µÅ©¿¡ ¼ö¹ÝµÇ´Â ·ÎÄðú ¸®¸ðÆ® È£½ºÆ® ³×ÀÓÀ» Áö´Ñ´Ù. »ùÇà ½ºÅ©¸³Æ®³»ÀÇ Ã³À½ µÎ ¼±¾ð¹®Àº get Ä¿¸Çµå·Î, dipÀÇ º¯¼ö¸¦ ÁöÁ¤Çϴµ¥ ¾²ÀδÙ. ¿©±â¼± ·ÎÄðú ¸®¸ðÆ® È£½ºÆ®³×ÀÓÀÌ vlager¿Í cowslipÀ¸·Î °¢°¢ ÁöÁ¤µÈ´Ù. ±× ´ÙÀ½ ´Ù¼¸°³ÀÇ ¼±¾ð¹®Àº Å͹̳Π¶óÀΰú ¸ðµ©À» ¼Â¾÷ÇÑ´Ù. resetÀº ¸ðµ©¿¡ ¸®¼Â ¹®ÀÚ¿ªÀ» º¸³½´Ù; Hayes ȣȯ ¸ðµ©ÀÇ °æ¿ì, ÀÌ´Â ATZ Ä¿¸ÇµåÀÌ´Ù. ±× ´ÙÀ½ ¼±¾ð¹®À¸·Î ¸ðµ©ÀÇ response¸¦ ¹æÃâÇϰԵǰí, ±×¸®ÇÏ¿© ´ÙÀ½ ¸î ¶óÀγ»ÀÇ ·Î±×ÀÎ chatÀ» ÀûÀýÈ÷ ¼öÇàµÉ °ÍÀÌ´Ù. ÀÌ chatÀº ²Ï Á÷¼±ÀûÀÌ´Ù. Áï, ±×°ÍÀº ´Ü¼øÈ÷ cowslipÀÇ ÀüȹøÈ£ÀÎ 0123456789·Î Àüȸ¦ °É°í, Cvlager °èÁ¤¿¡ password¶ó´Â Æнº¿öµå¸¦ ½á¼ ·Î±×ÀÎ ÇØ µé¾î°£´Ù. wait Ä¿¸Çµå´Â ù¹ø° ÀÎÀÚ·Î ÁÖ¾îÁø ¹®ÀÚ¿ªÀ» dipÀÌ ±â´Ù¸®µµ·Ï ¸¸µç´Ù. µÎ¹ø° ÀÎÀÚ·Î ÁÖ¾îÁø ¼ýÀÚ´Â, ¸¸¾à ±×¿Í °°Àº ¹®ÀÚ¿ÀÌ ÁÖ¾îÁöÁö ¾ÊÀ» °æ¿ì, ±× ¸¸ÅÀÇ ÃÊ µ¿¾È ±â´Ù¸°µÚ ŸÀӾƿô ÇÏ°Ô ¸¸µå´Â °ÍÀÌ´Ù. ·Î±×ÀÎ ÇÁ·Î½ÃÀú³»¿¡ ±ºµ¥±ºµ¥ ÀÖ´Â if Ä¿¸Çµå´Â Ä¿¸Çµå¸¦ ½ÇÇàÇϴµ¥ ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Ê¾Ò´ÂÁö¸¦ üũÇÑ´Ù. ·Î±×ÀÎÇÑ ÈÄ¿¡ ½ÇÇàµÇ´Â ¸¶Áö¸· Ä¿¸ÇµåµéÀº, SLIP ¸µÅ©¸¦ ¸ðµç È£½ºÆ®·ÎÀÇ ±âº» ·çÆ®·Î ¸¸µå´Â default¿Í, ¶óÀÎÀ» SLIP ¸ðµå·Î ¹Ù²Ù°í ÀÎÅÍÆäÀ̽º¿Í ¶ó¿ìÆà Å×À̺íÀ» ¼³Á¤ÇØ ÁÖ´Â modeÀÌ´Ù. dipÀÌ ³Î¸® »ç¿ëµÊ¿¡µµ ºÒ±¸ÇÏ°í, ¾ÆÁ÷ ¹®¼È°¡ Àß µÇ¾î ÀÖÁö ¾Ê´Ù. ±×¸®ÇÏ¿© ÀÌ Àý¿¡¼´Â, dipÀÇ Ä¿¸Çµå ´ëºÎºÐÀ» ¼³¸íÇÏ°íÀÚ ÇÑ´Ù. dipÀ» Å×½ºÆ® ¸ðµå·Î ½ÇÇà½ÃÅ°°í help Ä¿¸Çµå¸¦ ÀÔ·ÂÇÏ¸é ¸ðµç Ä¿¸Çµå¸¦ °³°üÇÒ ¼ö ÀÖ´Ù. Ä¿¸ÇµåÀÇ ¹®¹ýÀ» ¾Ë°íÀÚ ÇÑ´Ù¸é, ±× Ä¿¸Çµå¸¦ ÀÎÀÚ ¾øÀÌ ÀÔ·ÂÇ϶ó. ¹°·Ð ÀÎÀÚ ¾ø´Â Ä¿¸ÇµåÀÇ °æ¿ì¿£ µÇÁö ¾ÊÀ» °ÍÀÌ´Ù. DIP> help DIP knows about the following commands: databits default dial echo flush get goto help if init mode modem parity print port reset send sleep speed stopbits term wait DIP> echo Usage: echo on|off DIP> ÀÌÈÄ·Î, DIP> ÇÁ·ÒÇÁÆ®°¡ Ç¥½ÃµÇ´Â ¿¹Á¦´Â Å×Æ®½º ¸ðµå¿¡¼ ¾î¶»°Ô Ä¿¸Çµå¸¦ ³Ö°í ±×°ÍÀÌ ¹èÃâÇÏ´Â ¾Æ¿ôDzÀº ¹«¾ðÀÎÁö¸¦ º¸¿©ÁØ´Ù. ÀÌ ÇÁ·ÒÇÁÆ®°¡ ¾ø´Â ¿¹Á¦´Â ½ºÅ©¸³Æ®¿¡¼ ¹ßÃéÇÑ °ÍÀ¸·Î º¸¸éµÈ´Ù. The Modem Commands ½Ã¸®¾ó¶óÀΰú ¸ðµ©À» ¼³Á¤ÇÒ ¼ö ÀÕµµ·Ï dipÀÌ Á¦°øÇÏ´Â Ä¿¸Çµå°¡ ¸î°¡Áö Àִµ¥, À̵é Áß ¸î°³´Â ½Ã¸®¾ó Æ÷Æ®¸¦ ¼±ÅÃÇÏ´Â port¿Í, ÀϹÝÀûÀÎ ¶óÀÎ ÆĶó¹ÌÅ͸¦ ÁöÁ¤ÇÏ´Â speed, databits, stopbits ±×¸®°í parity °°ÀÌ ¸í·áÇÏ´Ù. modem Ä¿¸Çµå´Â ¸ðµ© ŸÀÔÀ» ¼±ÅÃÇÑ´Ù. ÇöÀç Áö¿øµÇ´Â ŸÀÔÀº ¿ÀÁ÷ HAYES (´ë¹®ÀÚ·Î »ç¿ëÇØ¾ß ÇÑ´Ù)»ÓÀÌ´Ù. ¹Ýµå½Ã dip¿¡ ¸ðµ© ŸÀÔÀ» ÁöÁ¤ÇØ ÁÖ¾î¾ß ÇÑ´Ù. ±×·¸Áö ¾ÊÀ¸¸é ±×°ÍÀº dial°ú reset Ä¿¸ÇµåÀÇ ½ÇÇàÀ» °ÅºÎÇÒ °ÍÀÌ´Ù. reset Ä¿¸Çµå´Â ¸ðµ©¿¡ ¸®¼Â¹®ÀÚ¿À» º¸³½´Ù; ±× ¹®ÀÚ¿Àº ¼±ÅÃÇÑ ¸ðµ© ŸÀÔ¿¡ ¿µÇâÀ» ¹ÞÀ¸¸ç, Hayes ȣȯ ¸ðµ©ÀÇ °æ¿ì ±×°ÍÀº ATZÀÌ´Ù. flush ÄÚµå´Â ¸ðµç ¸ðµ©ÀÇ response¸¦ ¹èÃâÇØ ¹ö¸®´Âµ¥ »ç¿ëµÇ¸ç, ±×·¸°Ô ÇÏÁö ¾ÊÀ» °æ¿ì reset ´ÙÀ½ÀÇ chat ½ºÅ©¸³Æ®°¡ È¥µ·µÉ ¼ö ÀÖ´Ù. ¿Ö³ÄÇϸé ÀÌÀü Ä¿¸ÇµåÀÇ OK response¸¦ Àб⠶§¹®ÀÌ´Ù. init Ä¿¸Çµå´Â ´ÙÀ̾ó¸µÇϱâ Àü¿¡ ¸ðµ©¿¡°Ô ³Ñ°ÜÁÙ ÃʱâÈ ¹®ÀÚ¿À» ¼±ÅÃÇÑ´Ù. Hayes ¸ðµ©ÀÇ °æ¿ì, µðÆúÆ® °ªÀº "ATE0 Q0 V1 X1"À̸ç, ÀÌ´Â Ä¿¸Çµå¿Í ±ä °á°ú¹°À» °¡Áö´Â ÄÚµåÀÇ echoingÀ» ÄѸç, blind ´ÙÀÌ¾ó¸µ (´ÙÀ̾ó Åæ¿¡ ´ëÇÑ Ã¼Å©¸¦ ÇÏÁö ¾ÊÀ½)À» ¼±ÅÃÇÑ´Ù. dial Ä¿¸Çµå´Â ÃÖÁ¾ÀûÀ¸·Î ÃʱâÈ ¹®ÀÚ¿À» ¸ðµ©¿¡ º¸³»°í ¿ø°Ý ½Ã½ºÅÛ¿¡ ´ÙÀ̾ó¾÷ÇÑ´Ù. Hayes ¸ðµ©ÀÇ ±âº»ÀûÀÎ dial Ä¿¸Çµå´Â ATDÀÌ´Ù. echo and term echo Ä¿¸Çµå´Â µð¹ö±ëÀ» µ½±âÀ§ÇØ Á¦°øµÈ´Ù. echo onÀ» »ç¿ëÇϸé, dipÀº ½Ã¸®¾ó µð¹ÙÀ̽º·Î º¸³»´Â ¸ðµç°ÍÀ» Äֿܼ¡ »Ñ·ÁÁØ´Ù. ÀÌ´Â echo off·Î ´Ù½Ã ²ø ¼ö ÀÖ´Ù. dipÀº ½ºÅ©¸³Æ® ¸ðµå¸¦ Àá½Ã ¶°³ª Å͹̳Π¸ðµå·Î µé¾î°¥ ¼ö ÀÖ°Ô Çϴµ¥, ÀÌ ¸ðµå¿¡¼ ´ç½ÅÀº dipÀ» ´Ù¸¥ ¾î¶² º¸Åë Å͹̳ΠÇÁ·Î±×·¥Ã³·³ »ç¿ëÇÏ¿© ½Ã¸®¾ó ¶óÀο¡ ÀÐ°í ¾²±â¸¦ ÇÒ ¼ö ÀÖ´Ù. ÀÌ ¸ðµå¸¦ ¹þ¾î³ª±â À§Çؼ± Ctrl-]¸¦ ÀÔ·ÂÇ϶ó. The get Command get Ä¿¸Çµå´Â dip¿¡¼ º¯¼ö¸¦ ÁöÁ¤ÇÏ´Â ¹æ¹ýÀÌ´Ù. °¡Àå ´Ü¼øÇÑ ÇüÅ´ À§ÀÇ ¿¹Á¦¿¡ Àü¹ÝÀûÀ¸·Î »ç¿ëµÈ¹Ù¿Í °°ÀÌ, º¯¼ö¸¦ »ó¼ö·Î ÁöÁ¤ÇÏ´Â °ÍÀÌ´Ù. ±×·¯³ª ask Å°¿öµå¸¦ °ª´ë½Å¿¡ ÁöÁ¤ÇÔÀ¸·Î½á »ç¿ëÀÚ°¡ ÀÔ·ÂÇϵµ·Ï ÇÁ·ÒÇÁÆ®¸¦ ¶ç¿ï¼öµµ ÀÖ´Ù.
DIP> get $local ask Enter the value for $local: ¼¼¹ø° ¹æ¹ýÀº ¸®¸ðÆ® È£½ºÆ®¿¡¼ ±× °ªÀ» ¾òÀ¸·Á ½ÃµµÇÏ´Â °ÍÀÌ´Ù. ±â¹¦ÇÏ°Ôµµ ÀÌ°ÍÀº ¸î°¡Áö °æ¿ì¿¡ÀÖ¾î À¯¿ëÇÏ´Ù. ¾î¶² SLIP ¼¹ö´Â SLIP ¸µÅ©»ó¿¡¼ ´ç½ÅÀÇ ¼ÒÀ¯ÀÎ IP ÁÖ¼Ò¸¦ »ç¿ëÇÏÁö ¸øÇÏ°Ô ÇÏ´Â ´ë½Å, ´ç½ÅÀÌ dialÇØ µé¾î°£ °÷ÀÌ Áö´Ñ ÁÖ¼Òµé Áß Çϳª¸¦ ´ç½Å¿¡°Ô ÇÒ´çÇÏ¿©, ±× ÁÖ¼Ò¿¡ °üÇÑ Á¤º¸¸¦ ¾Ë·ÁÁÖ´Â ¾î¶² µ¥½ÃÁö¸¦ Ãâ·ÂÇÑ´Ù. ¸¸¾à, ±× ¸Þ½ÃÁö°¡ "Your address: 193.174.7.202"¿Í °°´Ù¸é, ´ÙÀ½¿¡ º¸ÀÌ´Â dip ÄÚµåÀÇ ÀϺδ ´ç½ÅÀÌ ±× ÁÖ¼Ò¸¦ ¾òÀ» ¼ö ÀÖ°Ô²ûÇÑ´Ù.
... login chat ... wait address: 10 get $locip remote The print Command ÀÌ°ÍÀº dipÀ» ½ÇÇà½ÃŲ ÄַܼΠÅؽºÆ®¸¦ Ãâ·ÂÇÏ´Â Ä¿¸ÇµåÀÌ´Ù. ¾î¶°ÇÑ dipÀÇ º¯¼ö´Â print Ä¿¸Çµå³»¿¡ ´ÙÀ½Ã³·³ »ç¿ëµÉ ¼ö ÀÖ´Ù. DIP> print Using port $port at speed $speed Using port cua3 at speed 38400 Variable Names dipÀº ¿ÀÁ÷ ¼±(à»)Á¤ÀÇµÈ º¯¼ö ¼¼Æ®¸¸À» ÀÌÇØÇÑ´Ù. º¯¼ö ¸íÀº ¾ðÁ¦³ª ´Þ·¯ ½Éº¼·Î ½ÃÀÛÇÏ¿©¾ß ÇÏ°í, ¹Ýµå½Ã ¼Ò¹®ÀÚ·Î ¾²¿©Á®¾ß ÇÑ´Ù. $local°ú $locip º¯¼ö´Â ·ÎÄà ȣ½ºÆ®³×ÀÓ°ú IP ÁÖ¼Ò¸¦ °¡Áø´Ù. È£½ºÆ®³×ÀÓÀ» ¼¼ÆÃÇØÁØ dipÀº canonical È£½ºÆ®³×ÀÓÀ» $local¿¡ ÀúÀåÇÏ°í, ±×¿¡ »óÀÀÇÏ´Â IP ÁÖ¼Ò¸¦ $locip¿¡ ÇÒ´çÇÑ´Ù. $remote¿Í $rmtip º¯¼ö´Â ¸®¸ðÆ® È£½ºÆ®ÀÇ ³×ÀÓ°ú ÁÖ¼Ò¿¡ ´ëÇÏ¿© °°Àº ÀÏÀ» ÇÑ´Ù. $mtu´Â Ä¿³Ø¼ÇÀÇ MTU °ªÀ» °¡Áø´Ù. ÀÌ ´Ù¼¸°³ÀÇ º¯¼öµé¸¸ÀÌ ¿ÀÁ÷ Á÷Á¢ÀûÀ¸·Î get Ä¿¸Çµå¸¦ »ç¿ëÇÏ¿© °ªÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù. ´Ù¸¥ º¯¼öµéÀº ±×¿¡ »óÀÀÇÏ´Â Ä¿¸Çµå¸¦ ÅëÇØ ¼³Á¤µÇ³ª, print ±¸¹®¿¡¼ ±×°ÍÀ» »ç¿ëÇÒ ¼ö´Â ÀÖ´Ù. ÀÌ·¯ÇÑ °ÍµéÀº $modem°ú $port, $speedÀÌ´Ù. $errlvlÀ» ÅëÇØ, ´ç½ÅÀº ¸¶Áö¸·À¸·Î ½ÇÇàÇÑ Ä¿¸ÇµåÀÇ °á°ú¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Ù. ¿¡·¯ ·¹º§ 0Àº ¼º°øÀ», ±× ¿ÜÀÇ °ªµéÀº ¿¡·¯¸¦ °¡¸®Å²´Ù. The if and goto Commands of Ä¿¸Çµå´Â ÈçÈ÷ ¸»ÇÏ´Â if°¡ ¾Æ´Ï¶ó, Á¶°ÇºÎ ºÐ±âÁ¡(conditional branch)ÀÌ´Ù. ±×°ÍÀÇ ¹®¹ýÀº if var op number goto label À¸·Î, Ç¥¼Ç¹ýÀº $errlvl°ú $locip, $rmtip °°Àº º¯¼öµé ÁßÀÇ Çϳª°£ÀÇ ´Ü¼øÇÑ ºñ±³¿©¾ß ÇÑ´Ù. µÎ¹ø° ¿ÀÆÛ·£µå(operand)´Â Á¤¼ö¿©¾ß¸¸ ÇÑ´Ù. ±×¸®°í ¿¬»êÀÚ op´Â ==,!=,<,>,<=,>=µé Áß ÇϳªÀ̾î¾ß ÇÑ´Ù. goto Ä¿¸Çµå´Â ½ºÅ©¸³Æ®ÀÇ ½ÇÇàÀÌ ¶óº§(label)À» °¡Áø ¶óÀÎ ´ÙÀ½¿¡¼ºÎÅÍ °è¼ÓµÇ°Ô ¸¸µç´Ù. ¶óº§Àº ¶óÀÎÀÇ Ã¹¹ø° ÅäÅ«(token)À¸·Î ³ªÅ¸³ª¾ßÇÏ°í, ¹Ù·ÎµÚ¿¡ ÄÝ·ÐÀÌ ºÙ¾î ÀÖ¾î¾ß ÇÑ´Ù. send, wait and sleep À̵é Ä¿¸Çµå´Â dip³»ÀÇ ´Ü¼øÇÑ chat ½ºÅ©¸³Æ®ÀÇ ¼öÇàÀ» µµ¿ÍÁØ´Ù. send´Â ÁÖ¾îÁø ÀÎÁö¸¦ ½Ã¸®¾ó ¶óÀÎÀ¸·Î ¹èÃâÇÑ´Ù. ±×°ÍÀº º¯¼ö¸¦ Áö¿øÇÏÁö ¸øÇÏÁö¸¸, \n°ú \b°°Àº ¸ðµç C ½ºÅ¸ÀÏÀÇ ¹é½½·¡½¬ ij¸¯ÅÍ ½ÃÄö½º´Â ÀÌÇØÇÑ´Ù. Æ¿µå ij¸¯ÅÍ (~ : tilde - ÈçÈ÷ °¥¸Å±â¶ó ºÒ¸®±âµµ ÇÑ´Ù. - ¿ªÀÚÁÖ)´Â ij¸®Áö ¸®ÅÏ/´º¶óÀΠij¸¯ÅÍÀÇ ¾à¾î·Î »ç¿ëµÈ´Ù. wait´Â ÀÎÀÚ·Î ÇÑ ´Ü¾î¸¦ ¹Þ¾Æ, ÀÌ ´Ü¾î¸¦ ÀνÄÇÒ ¼ö ÀÖÀ»¶§±îÁö ½Ã¸®¾ó ¶óÀλóÀÇ ¸ðµç inputÀ» ½ºÄµÇÑ´Ù. ÀÌ ´Ü¾î¿¡´Â °ø¹éÀÌ ¾ø¾î¾ß ÇÑ´Ù. ¼±ÅÃÀûÀ¸·Î, µÎ¹ø° ÀÎÀÚ·Î wait¿¡ timeout °ªÀ» ÁÙ ¼öµµ ÀÖ´Ù. ¸¸¾à ±â´ëÇÏ°í ÀÖ´Â ´Ü¾î°¡ ±× ¸¸ÅÀÇ ÃÊ(second)µ¿¾È ¼ö½ÅµÇÁö ¾Ê´Â´Ù¸é, ±× Ä¿¸Çµå´Â $errlvl¿¡ 1ÀÇ °ªÀ» ÁÖ¾î ¸®ÅÏÇÒ °ÍÀÌ´Ù. sleep ±¸¹®Àº ÀÏÁ¤·®ÀÇ ½Ã°£µ¿¾È, °¡·É ·Î±×ÀÎ ½ÃÄö½º°¡ ¿Ï°áµÉ ¶§±îÁö ÂüÀ»¼ºÀÖ°Ô ±â´Ù·Á¾ßÇÏ´Â °æ¿ì, ´ë±âÇϵµ·Ï Çϴµ¥ »ç¿ëµÈ´Ù. mode and default À̵é Ä¿¸Çµå´Â ½Ã¸®¾ó ¶óÀÎÀ» SLIP¸ðµå·Î µ¹¸®°í ÀÎÅÍÆäÀ̽º¸¦ ¼³Á¤Çϴµ¥ »ç¿ëµÈ´Ù. mode Ä¿¸Çµå´Â dipÀÌ µ¥¸ó ¸ðµå·Î ÀüȯµÇ±â Àü¿¡ ¸¶Áö¸·À¸·Î ½ÇÇàµÇ´Â Ä¿¸ÇµåÀ̸ç, ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Ê´Â ÇÑ, ±× Ä¿¸Çµå´Â ¸®ÅÏÇÏÁö ¾Ê´Â´Ù. mode´Â ÀÎÀÚ·Î ÇÁ·ÎÅäÄÝ ³×ÀÓÀ» ¹Þ´Â´Ù. dipÀº ÇöÀç SLIP°ú CSLIPÀ» ÀûÀýÇÑ À̸§À¸·Î ÀνÄÇÑ´Ù. ±×·¯³ª ÇöÀçÀÇ dip ¹öÀüÀº adaptive SLIPÀ» ÀÌÇØÇÏÁö ¸øÇÑ´Ù. ½Ã¸®¾ó ¶óÀο¡ SLIP ¸ðµå¸¦ ÄÒ ÈÄ, dipÀº ÀÎÅÍÆäÀ̽º¸¦ point-to-point ¸µÅ©·Î ¼³Á¤ÇϱâÀ§ÇØ ifconfigÀ», ±×¸®°í ¸®¸ðÆ® È£½ºÆ®·ÎÀÇ ·çÆ®¸¦ ÁöÁ¤ÇϱâÀ§ÇØ route¸¦ ½ÇÇàÇÑ´Ù. °Ô´Ù°¡, ½ºÅ©¸³Æ®°¡ mode Àü¿¡ default Ä¿¸Çµå¸¦ ½ÇÇàÇÑ´Ù¸é, dipÀº SLIP ¸µÅ©¸¦ °¡¸®Å°´Â ±âº» ·çÆ®¸¦ ¿ª½Ã³ª ¸¸µé °ÍÀÌ´Ù.
SLIP Ŭ¶óÀ̾ðÆ®¸¦ ¼Â¾÷ÇÏ´Â °ÍÀº ±î´Ù·Î¿î ºÎºÐÀ̾ú´Ù. À̹ø¿£ ¹Ý´ë·Î, ´ç½ÅÀÇ È£½ºÆ®¸¦ SLIP ¼¹ö·Î µ¿ÀÛÇÏ°Ô Çغ¸ÀÚ. ÀÌ°ÍÀº º¸´Ù ½¬¿ï °ÍÀÌ´Ù. À̸¦ À§ÇÑ ÇÑ°¡Áö ¹æ¹ýÀº dipÀ» ¼¹ö¸ðµå·Î »ç¿ëÇÏ´Â °ÍÀ̸ç, ±×°ÍÀ» diploginÀ̶ó°í ½ÇÇà½ÃÅ°´Â °ÍÀÌ´Ù. ±×°ÍÀÇ ÁÖ ¼³Á¤ ÆÄÀÏÀº /etc/diphostsÀ̸ç, ÀÌ ÆÄÀÏÀº ·Î±×ÀÎ ³×ÀÓÀ» ÀÌ È£½ºÆ®¿¡ ÇÒ´çµÈ ÁÖ¼Ò¿¡ ¿¬°áÇØ ³õ¾Ò´Ù. ±× ´ë½Å¿¡, ´ç½ÅÀº sliploginÀ» »ç¿ëÇÒ ¼öµµ Àִµ¥, ±×°ÍÀº BSD¿¡ ±â¿øÀ» µÐ Åø·Î½á º¸´Ù À¯¿¬¼ºÀÖ´Â ¼³Á¤ ü°è¸¦ Á¦°øÇÏ¿© ´ç½ÅÀÌ ¿¬°áµÇ¾î ÀÖµçÁö ¾Æ´ÏµçÁö ½© ½ºÅ©¸³Æ®¸¦ ½ÇÇàÇÒ ¼ö ÀÖ°ÔÇÏ´Â °ÍÀ¸·Î, ÇöÀç BetaÀÌ´Ù. µÎ ÇÁ·Î±×·¥ ¸ðµÎ SLIP Ŭ¶óÀ̾ðÆ®´ç ÇϳªÀÇ ·Î±×ÀÎ °èÁ¤À» ¸¸µé¾î ÁÙ °ÍÀ» ¿ä±¸ÇÑ´Ù. ¿¹¸¦µé¾î, ´ç½ÅÀÌ dent.beta.comÀÇ Arthur Dent¿¡°Ô SLIP ¼ºñ½º¸¦ Á¦°øÇÑ´Ù°í °¡Á¤Çϸé, ´ç½ÅÀº passwd ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ÇÑ ¶óÀÎÀ» Ãß°¡ÇÏ¿© dent¶ó´Â À̸§ÀÇ °èÁ¤À» »ý¼ºÇÒ °ÍÀÌ´Ù.
dent:*:501:60:Arthur Dent's SLIP account:/tmp:/usr/sbin/diplogin ÀÌÈÄ, passwd À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇØ dentÀÇ Æнº¿öµå¸¦ ÁöÁ¤ÇÑ´Ù. ÀÌÁ¦, dent°¡ ·Î±×ÀÎÇÒ ¶§ dipÀº ¼¹ö·Î ±¸µ¿µÉ °ÍÀÌ´Ù. ±×°¡ Á¤¸»·Î SLIPÀ» »ç¿ëÇϵµ·Ï Çã¿ëµÇ¾îÀÖ´ÂÁö ã¾Æ³»°íÀÚ, ±×°ÍÀº /etc/diphosts¿¡¼ À¯Àú³×ÀÓÀ» °Ë»öÇÒ °ÍÀÌ´Ù. ÀÌ ÆÄÀÏÀº Á¢±Ù±ÇÇÑ°ú Ä¿³Ø¼Ç ÆĶó¹ÌÅ͸¦ °¢ SLIP À¯Àúº°·Î ¼¼ºÎÈ ½ÃÄÑ ³õ¾Ò´Ù. dentÀÇ »ùÇà ¿£Æ®¸®´Â ÀÌ¿Í °°À» °ÍÀÌ´Ù. dent::dent.beta.com:Arthur Dent:SLIP,296 ÄÝ·ÐÀ¸·Î ³ª´µ¾îÁø ù¹ø° Çʵå´Â »ç¿ëÀÚ°¡ ·Î±×ÀÎÇÒ ¶§ ¾²´Â À̸§ÀÌ´Ù. µÎ¹ø° Çʵå´Â Ãß°¡ÀûÀÎ Æнº¿öµå(¾Æ·¡¸¦ º¸¶ó)¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù. ¼¼¹ø°´Â ÀüȰŴ ȣ½ºÆ®ÀÇ È£½ºÆ®³×ÀÓ ¶Ç´Â IP ÁÖ¼ÒÀÌ´Ù. ±× ´ÙÀ½Àº (¾ÆÁ÷±îÁö´Â) º°´Ù¸¥ Ưº°ÇÑ Àǹ̾ø´Â Á¤º¸ÇʵåÀÌ°í, ¸¶Áö¸· Çʵ忡 Ä¿³Ø¼Ç ÆĶó¹ÌÅÍ°¡ ÀûÇôÀÖ´Ù. ÀÌ´Â ÄÞ¸¶(½°Ç¥)·Î ±¸ºÐµÇ¸ç, ÇÁ·ÎÅäÄÝÀ» (ÇöÀç´Â SLIPÀ̳ª CSLIP ÁßÀÇ Çϳª) Á¤ÇÏ°í, ±× µÚ¿¡ MTU¸¦ ÁöÁ¤ÇÑ´Ù. dent°¡ ·Î±×ÀÎÇÒ ¶§, diploginÀº diphostsÆÄÀÏ¿¡¼ ±×¿¡´ëÇÑ Á¤º¸¸¦ ºÐÇÒÇÏ¿©, µÎ¹ø° Çʵ尡 ºñ¾îÀÖÁö ¾Ê´Ù¸é "external security password"¿¡ ´ëÇÑ ÇÁ·ÒÇÁÆ®¸¦ ¶ç¿î´Ù. »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¹®ÀÚ¿Àº diphostsÀÇ (¾ÏȣȵÇÁö ¾ÊÀº) Æнº¿öµå¿Í ºñ±³µÇ°í, ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù¸é ·Î±×ÀÎ ½Ãµµ´Â °ÅºÎµÈ´Ù. ±×·¸Áö ¾ÊÀ» °æ¿ì, diploginÀº ½Ã¸®¾ó ¶óÀÎÀ» CSLIP ¶Ç´Â SLIP ¸ðµå·Î µ¹¸®°í, ÀÎÅÍÆäÀ̽º¿Í ·çÆ®¸¦ ¼Â¾÷ÇÑ´Ù. ÀÌ Ä¿³Ø¼ÇÀº, À¯Àú°¡ ¿¬°áÀ» ²÷°Å³ª ¸ðµ©ÀÌ ¶óÀÎÀ» ³õÃĹö¸± ¶§±îÁö ¼º¸³µÈä·Î ³²°ÜÁø´Ù. Ä¿³Ø¼ÇÀÇ Ã¶È¸µÇ¸é diploginÀº ¶óÀÎÀ» º¸ÅëÀÇ ¶óÀαÔÀ²·Î µÇµ¹¸®°í Á¾·áÇÑ´Ù. diploginÀº ½´ÆÛÀ¯Àú ±ÇÇÑÀ» ¿äÇÑ´Ù. ¸¸¾à dipÀÌ root·Î setuidµÇ¾î ÀÖÁö ¾Ê´Ù¸é, diploginÀ» dipÀÇ ´Ü¼øÇÑ ¸µÅ©°¡ ¾Æ´Ñ º°°³ÀÇ º¹»çº»À¸·Î ¸¸µé¾î µÎ¾î¾ß ÇÑ´Ù. ±×·¯¸é dip ÀÚüÀÇ »óÅ¿¡ ¿µÇâÀ» ÁÖÁö ¾Ê°í¼µµ diploginÀ» ¾ÈÀüÇÏ°Ô setuidÇÒ ¼ö ÀÖ´Ù. (dipÀ̳ª diploginÀÌ argv[0]¿¡ ´ëÇÑ Ã¼Å©¸¦ ÇÏÁö¾ÊÀ¸¸é ÀÌ·¯ÇÑ º¸¾ÈÃ¥Àº ¹«ÀǹÌÇÑ °ÍÀÌ´Ù. -¿ªÀÚÁÖ) |
Other Chapters
1. Introduction to Networking |
Appendix
A. A Null Printer Cable for PLIP |