Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > e74e806c1a2640e922856d7eb69d1420 > files > 43

howto-text-ja-2006-5mdv2010.0.noarch.rpm

  Linux IPCHAINS-HOWTO
  Rusty Russell
  v1.0.8, Tue Jul  4 14:20:53 EST 2000
  “ú–{Œê–ó: JF Project (jf@linux.or.jp)
  v1.0.1j  Nov. 21, 2000

  ‚±‚Ì•¶‘‚́ALinux Œü‚¯‚ÌŠg’£‚³‚ꂽ IP ƒtƒ@ƒCƒAƒEƒH[ƒŠƒ“ƒOƒ`ƒFƒCƒ“ƒ\ƒt
  ƒgƒEƒFƒA‚ð‚ǂ̂悤‚É“üŽè‚µAƒCƒ“ƒXƒg[ƒ‹‚µAÝ’肵A‚»‚µ‚āA‚±‚ê‚ðŠˆ—p
  ‚·‚éƒAƒCƒfƒBƒA‚ÌŠô‚‚©‚ðÚq‚·‚邱‚Æ‚ð–Ú“I‚Æ‚µ‚Ü‚·B
  ______________________________________________________________________

  –ÚŽŸ

  1. Žn‚ß‚É
     1.1 ‰½?
     1.2 ‚È‚º?
     1.3 ‚Ç‚¤‚·‚ê‚Î?
     1.4 ‚Ç‚±?

  2. ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ÌŠî‘b
     2.1 ƒpƒPƒbƒgƒtƒBƒ‹ƒ^‚Ƃ͉½‚ð‚·‚é‚à‚Ì?
     2.2 ‚È‚º?
     2.3 ‚Ç‚¤‚â‚Á‚Ä?
        2.3.1 ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‹@”\‚ð—LŒø‚É‚µ‚½ƒJ[ƒlƒ‹
        2.3.2 ipchains
        2.3.3 ƒtƒBƒ‹ƒ^‹K‘¥‚ðP‹v“I‚É‚·‚é‚É‚Í

  3. ‚à‚¤A¬—‚µ‚Ä—ˆ‚½! ƒ‹[ƒeƒBƒ“ƒO‚¾‚́Aƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚¾‚́Aƒ|[ƒgƒtƒHƒ[ƒfƒBƒ“ƒO‚¾‚́AŽ©“®ƒtƒHƒ[ƒfƒBƒ“ƒO(ipautofw)‚¾‚Ì‚Á‚ācB
     3.1 Rusty ‚̃}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ÉŠÖ‚·‚é 3‚‚̎wj
     3.2 Ž©”­“I‚Ȑé“`:  WatchGuard ‚Å‹K§‚·‚é
     3.3 ƒtƒ@ƒCƒAƒEƒH[ƒ‹“I“®ì‚É‹¤’ʂȐݒè
        3.3.1 ƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN: “`““I‚ȃvƒƒLƒV
        3.3.2 ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN: “§‰ß“I‚ȃvƒƒLƒV
        3.3.3 ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN: ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO
        3.3.4 ƒpƒuƒŠƒbƒNƒlƒbƒgƒ[ƒN
        3.3.5 §ŒÀ‚³‚ꂽ“à•”ƒT[ƒrƒX
     3.4 ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ɑ΂·‚é‚»‚Ì‘¼‚̏î•ñ

  4. IP ƒtƒ@ƒCƒAƒEƒH[ƒŠƒ“ƒOƒ`ƒFƒCƒ“
     4.1 ‚ǂ̂悤‚ɃpƒPƒbƒg‚ªƒtƒBƒ‹ƒ^‚ð’ʉ߂·‚é‚Ì‚©
        4.1.1 ipchains ‚ðŽg‚¤
        4.1.2 ‚ ‚È‚½‚̃Rƒ“ƒsƒ…[ƒ^‚ª‹N“®‚·‚鎞‚ÉŒ©‚é‚à‚Ì
        4.1.3 ’Pˆê‚̃‹[ƒ‹‚Å‚Ì‘€ì
        4.1.4 ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ÌŽd—l
           4.1.4.1 ƒ\[ƒX‚ƈ¶æ IP ƒAƒhƒŒƒX‚ÌŽw’è
           4.1.4.2 ”Û’è‚ÌŽw’è
           4.1.4.3 ƒvƒƒgƒRƒ‹‚ÌŽw’è
              4.1.4.3.1 UDP ‚Æ TCP ƒ|[ƒg‚ÌŽw’è
              4.1.4.3.2 ICMP ƒ^ƒCƒv‚ƃR[ƒh‚ÌŽw’è
           4.1.4.4 ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ÌŽw’è
           4.1.4.5 TCP SYN ƒpƒPƒbƒg‚Ì‚Ý‚ðŽw’è‚·‚é
           4.1.4.6 ƒtƒ‰ƒOƒƒ“ƒg‚̏ˆ—
        4.1.5 ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Ì•›ŽŸ“IŒø‰Ê
           4.1.5.1 ƒ^[ƒQƒbƒg‚ÌŽw’è
           4.1.5.2 ƒpƒPƒbƒg‚̃ƒO‹L˜^
           4.1.5.3 ƒT[ƒrƒX‚ÌŒ^‚𑀍삷‚é
           4.1.5.4 ƒpƒPƒbƒg‚̃}[ƒLƒ“ƒO
           4.1.5.5 ƒ`ƒFƒCƒ“‚Ì‘€ì
           4.1.5.6 V‚µ‚¢ƒ`ƒFƒCƒ“‚ðì‚é
           4.1.5.7 ƒ`ƒFƒCƒ“‚ðíœ‚·‚é
           4.1.5.8 ƒ`ƒFƒCƒ“‚ð‹ó‚É‚·‚é
           4.1.5.9 ƒ`ƒFƒCƒ“‚Ì“à—e‚ðƒŠƒXƒgƒAƒbƒv‚·‚é
           4.1.5.10 ƒJƒEƒ“ƒ^[‚ð(ƒ[ƒ‚É)ƒŠƒZƒbƒg‚·‚é
           4.1.5.11 ƒ|ƒŠƒV[‚ðÝ’è‚·‚é
        4.1.6 ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚Ì‘€ì
        4.1.7 ƒpƒPƒbƒg‚ðƒ`ƒFƒbƒN‚·‚é
        4.1.8 ˆê“x‚É•¡”‚̃‹[ƒ‹‚Ɖ½‚ª‹N‚±‚é‚Ì‚©‚ðŒ©‚é
     4.2 ŽÀ—áW
        4.2.1 ipchains-save ‚ðŽg‚¤
        4.2.2 ipchains-restore ‚ðŽg‚¤

  5. ‚»‚Ì‘¼‚̏î•ñ
     5.1 ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð‚ǂ̂悤‚ɍ\’z‚·‚é‚©
     5.2 ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Å”jŠü‚µ‚Ä‚Í‚¢‚¯‚È‚¢ƒpƒPƒbƒg
        5.2.1 ICMP ƒpƒPƒbƒg
        5.2.2 DNS (ƒl[ƒ€ƒT[ƒo[) ‚Ö‚Ì TCP Ú‘±
        5.2.3 FTP ‚̈«–²
     5.3 Ping of Death ‚ð”rœ‚·‚é
     5.4 Teardrop ‚Æ Bonk ‚ð”rœ‚·‚é
     5.5 ƒtƒ‰ƒOƒƒ“ƒg”šŒ‚‚ð”rœ‚·‚é
     5.6 ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð•ÏX‚·‚é
     5.7 IP ‹U‘••ÛŒì(IP Spoof Protection)‚ðA‚ǂ̂悤‚ɐݒ肵‚½‚ç‚æ‚¢‚Å‚·‚©?
     5.8 ÅV‚̃vƒƒWƒFƒNƒg
        5.8.1 SPF: ƒXƒe[ƒgƒtƒ‹ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO
        5.8.2 Michael Hasenstein ‚Ì ftp-data ƒnƒbƒN
     5.9 ¡Œã‚̉ۑè

  6. ˆê”Ê“I‚È–â‘è
     6.1 ipchains -L ‚ðŽg‚¤‚ƃtƒŠ[ƒY‚µ‚Ü‚·!
     6.2 ”½“]‚ª‚Å‚«‚Ü‚¹‚ñ!
     6.3 Masquerading ‚Ü‚½‚Í Forwarding ‚ª“®‚«‚Ü‚¹‚ñ!
     6.4 -j REDIR ‚ª“®‚«‚Ü‚¹‚ñ!
     6.5 ƒƒCƒ‹ƒhƒJ[ƒhƒCƒ“ƒ^[ƒtƒF[ƒX‚ª“®‚«‚Ü‚¹‚ñ!
     6.6 TOS (Type of Service) ‚ª“®‚«‚Ü‚¹‚ñ!
     6.7 ipautofw ‚Æipportfw ‚ª“®‚«‚Ü‚¹‚ñ!
     6.8 xosview ‚ª‰ó‚ê‚Ä‚¢‚Ü‚·!
     6.9 `-j REDIRECT' ‚Å Segmentation ƒGƒ‰[‚É‚È‚è‚Ü‚·!
     6.10 ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’è‚Å‚«‚Ü‚¹‚ñ!
     6.11 IPX ‚ðƒtƒ@ƒCƒAƒEƒH[ƒ‹‚µ‚½‚¢‚Å‚·!

  7. ŽÀ—p“I‚È—á
     7.1 \¬
     7.2 –Ú“I
     7.3 ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ðs‚¤‘O‚É
     7.4 ƒpƒPƒbƒg‚ð’ʉ߂³‚¹‚邽‚߂̃pƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO
        7.4.1 forward ƒ`ƒFƒCƒ“‚©‚çƒWƒƒƒ“ƒv‚³‚¹‚é
        7.4.2 icmp-acc ƒ`ƒFƒCƒ“‚ð’è‹`‚·‚é
        7.4.3 GOOD (“à•”ƒlƒbƒgƒ[ƒN) ‚©‚ç DMZ (ƒT[ƒoƒlƒbƒgƒ[ƒN)
        7.4.4 BAD (ŠO•”ƒlƒbƒgƒ[ƒN)‚©‚ç DMZ (ƒT[ƒoƒlƒbƒgƒ[ƒN)
        7.4.5 GOOD (“à•”ƒlƒbƒgƒ[ƒN)‚©‚ç BAD (ŠO•”ƒlƒbƒgƒ[ƒN)
        7.4.6 DMZ ‚©‚ç GOOD (“à•”ƒlƒbƒgƒ[ƒN)
        7.4.7 DMZ ‚©‚ç BAD (ŠO•”ƒlƒbƒgƒ[ƒN)
        7.4.8 BAD (ŠO•”ƒlƒbƒgƒ[ƒN)‚©‚ç GOOD (“à•”ƒlƒbƒgƒ[ƒN)
        7.4.9 Linux ƒ}ƒVƒ“Ž©g‚ɑ΂·‚éƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO
           7.4.9.1 BAD (ŠO•”ƒlƒbƒgƒ[ƒN) ƒCƒ“ƒ^[ƒtƒF[ƒX
           7.4.9.2 DMZ ƒCƒ“ƒ^ƒtƒF[ƒX
           7.4.9.3 GOOD (“à•”ƒlƒbƒgƒ[ƒN)ƒCƒ“ƒ^[ƒtƒF[ƒX
     7.5 ÅŒã‚É

  8. •t˜^: ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ
     8.1 ƒNƒBƒbƒNƒŠƒtƒ@ƒŒƒ“ƒXˆê——
     8.2 ipfwadm ƒRƒ}ƒ“ƒh‚Ì•ÏŠ·—á

  9. •t˜^: ipfwadm-wrapper ƒXƒNƒŠƒvƒg‚ðŽg‚¤
  10. •t˜^: ŽÓŽ«
     10.1 –|–ó

  11. “ú–{Œê–ó‚ɂ‚¢‚Ä

  ______________________________________________________________________

  1.  Žn‚ß‚É

  ‚±‚Ì•¶‘‚Í IPCHAINS-HOWTO ‚Å‚·BÅV”Å‚ª‚ ‚éƒ}ƒXƒ^[ƒTƒCƒg‚Í ``‚Ç‚±?''
  ‚ðŽQÆ‚µ‚ĉº‚³‚¢B LINUX NET-3-HOWTO ‚à“Ç‚ñ‚¾•û‚ª‚æ‚¢‚Å‚µ‚傤B IP-
  Masquerading HOWTO, PPP-HOWTO, Ethernet-HOWTO ‚Æ Firewall HOTO ‚à–Ê”’
  ‚¢‚Å‚µ‚傤B (‚»‚µ‚āAŒJ‚è•Ô‚µ‚Ü‚·‚ªA alt.fan.bigfoot FAQ ‚à)B

  (–ó’: alt.fan.bigfoot FAQ  <- [á’j‚̃jƒ…[ƒXƒOƒ‹[ƒvAƒMƒƒƒO?])

  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ɂ‚¢‚ÄŠù‚É’m‚Á‚Ä‚¢‚él‚́A ``‚È‚º?'' ‚̏́A
  ``‚Ç‚¤‚â‚Á‚Ä?'' ‚̏͂ð“Ç‚ñ‚ŁA ``IP ƒtƒ@ƒCƒAƒEƒH[ƒŠƒ“ƒOƒ`ƒFƒCƒ“'' ‚Ì
  Í‚Ì’†‚̃^ƒCƒgƒ‹‚ð‚´‚Á‚Æ’­‚ß‚Ä‚Ý‚Ü‚µ‚傤B
  ipfwadm ‚©‚çˆÚs‚µ‚½‚¢l‚́A ``Žn‚ß‚É'' ‚̏́A ``‚Ç‚¤‚â‚Á‚Ä?'' ‚̏́A
  ‚»‚µ‚Ä•t˜^“à‚Ì ``ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ'' ‚̏͂ƁA ```ipfwadm-
  wrapper' ƒXƒNƒŠƒvƒg‚ðŽg‚¤'' ‚̏͂ð“Ç‚Ý‚Ü‚µ‚傤B

  1.1.  ‰½?

  Linux ipchains ‚Í Linux IPv4 ƒtƒ@ƒCƒAƒEƒH[ƒŠƒ“ƒO‚̃R[ƒh (Žå‚É BSD ‚©
  ‚ç‚̃pƒNƒŠ)‚̏‘‚«’¼‚µ‚Å‚ ‚èAipfwadm ‚̏‘‚«’¼‚µ‚Å‚à‚ ‚è‚Ü‚·B‚»‚Ì
  ipfwadm ‚́A BSD ‚Ì ipfw ‚̏‘‚«’¼‚µ‚Å‚à‚ ‚é‚ƁAŽ„‚͐M‚¶‚Ä‚¢‚Ü‚·B
  Linux ƒo[ƒWƒ‡ƒ“ 2.1.102 ˆÈ~‚Ì IP ƒpƒPƒbƒgƒtƒBƒ‹ƒ^‚ªAŠÇ—‚É•K—v‚Å
  ‚·B

  1.2.  ‚È‚º?

  ˆÈ‘O‚Ì Linux ‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚̃R[ƒh‚Í fragment ‚ðˆµ‚¦‚Ü‚¹‚ñ‚µA
  (­‚È‚­‚Æ‚à Intel —p‚Å‚Í) 32 ƒrƒbƒg‚̃JƒEƒ“ƒ^‚µ‚©‚ ‚è‚Ü‚¹‚ñ‚µA
  TCP/UDP/ICMP ˆÈŠO‚ÌŽd—l‚̃vƒƒgƒRƒ‹‚ðl—¶‚µ‚Ä‚¢‚Ü‚¹‚ñ‚µAƒAƒgƒ~ƒbƒN(u
  ŠÔ“I)‚É‘å‚«‚­(ƒ‹[ƒ‹‚ð)•ÏX‚·‚邱‚Æ‚à‚Å‚«‚Ü‚¹‚ñ‚µA‹tƒ‹[ƒ‹‚ð–ž‚½‚¹‚Ü
  ‚¹‚ñ‚µA‚¢‚­‚‚©–­‚È•È‚ª‚ ‚è‚Ü‚µ‚½‚µAŠÇ—‚µ‚É‚­‚¢‚à‚Ì‚Å‚µ‚½(—˜—pŽÒ‚Ì
  ƒ~ƒX‚ðµ‚«‚â‚·‚¢)B

  (–ó’: ‚±‚±‚Å—p‚¢‚ç‚ê‚éuƒAƒgƒ~ƒbƒN(Œ´•¶‚Í `atomically')v‚́A
  ipchains ‚Æ‚¢‚¤ƒRƒ}ƒ“ƒh‚Ì–¼‘O‚Ì—R—ˆ‚É‚à‚È‚Á‚Ä‚¢‚é‚Æ‚±‚낾‚ÆŽv‚¢‚Ü‚·B
  ƒ†[ƒU’è‹`ƒ`ƒFƒCƒ“‚É•¡”‚̃‹[ƒ‹‚ð’è‹`‚µ‚Ä‚¨‚«A‚»‚ê‚ðŠù‘¶‚̃`ƒFƒCƒ“‚É
  ’ljÁ‚µ‚½‚èAˆ½‚ÍŠù‘¶‚̃`ƒFƒCƒ“‚ðV‚µ‚­’è‹`‚µ‚½ƒ`ƒFƒCƒ“‚Æ’uŠ·‚·‚邱‚Æ
  ‚ŁAˆêu‚É‚µ‚ătƒ@ƒCƒAƒEƒH[ƒ‹‚̍ì—p‚ð•ÏX‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B)

  1.3.  ‚Ç‚¤‚·‚ê‚Î?

  Œ»ÝAƒJ[ƒlƒ‹‚̃R[ƒh‚ÌŽå—¬‚Í 2.1.102 ˆÈ~‚Å‚·B 2.0 ƒJ[ƒlƒ‹ƒVƒŠ[ƒY
  ‚ł́A web ƒy[ƒW‚©‚çƒpƒbƒ`‚ðƒ_ƒEƒ“ƒ[ƒh‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B‚à‚µA‚¨
  ŽèŽ‚¿‚Ì 2.0 ƒJ[ƒlƒ‹‚ª web ã‚É‚Ä“¾‚ç‚ê‚éƒpƒbƒ`‚æ‚è‚àV‚µ‚¢‚È‚ç‚΁A‚»
  ‚̌¢ƒpƒbƒ`‚Í‘½•ª OK ‚Å‚µ‚傤B 2.0 ƒJ[ƒlƒ‹‚ÌŠY“–•”•ª‚Í‚¨‚¨‚æ‚»ˆÀ’è
  ‚µ‚Ä‚¢‚Ü‚·B(—Ⴆ‚΁A 2.0.34 ƒJ[ƒlƒ‹‚̃pƒbƒ`‚Í 2.0.35 ƒJ[ƒlƒ‹‚É‚à
  ‚µ‚Á‚©‚è“–‚Ä‚ç‚ê‚Ü‚·) 2.0 ƒpƒbƒ`‚Í ipportfw ‚Æ ipautofw ƒpƒbƒ`‚Ƃ̌݊·
  «‚ª‚È‚¢‚̂ŁA ipchains “Á—L‚Ì‹@”\‚ð–{“–‚É•K—v‚Æ‚µ‚È‚¢‚È‚ç‚΁Aƒpƒbƒ`‚Ì
  “±“ü‚Í‚¨‘E‚ß‚µ‚Ü‚¹‚ñB

  1.4.  ‚Ç‚±?

  ŒöŽ®ƒy[ƒW‚Í3‰ÓŠ‚ ‚è‚Ü‚·B Penguin Computing ‚ÉŠ´ŽÓ‚µ‚Ü‚·B
  <http://netfilter.filewatcher.org/ipchains> the SAMBA Team ‚ÉŠ´ŽÓ‚µ‚Ü
  ‚·B <http://www.samba.org/netfilter/ipchains> Jim Pick ‚ÉŠ´ŽÓ‚µ‚Ü‚·B
  <http://netfilter.kernelnotes.org/ipchains>

  ƒoƒO•ñA‹c˜_AŠJ”­AŽg‚¢•û‚ð˜b‚µ‡‚¤ƒ[ƒŠƒ“ƒOƒŠƒXƒg‚ª‚ ‚è‚Ü‚·Bƒ[
  ƒŠƒ“ƒOƒŠƒXƒg‚Ö‚Ì“ü‰ï‚ɂ́AƒƒbƒZ[ƒW‚É ``subscribe ipchains-list'' ‚ð
  ‘‚¢‚āA east.balius.com ‚Ƀ[ƒ‹‚µ‚ĉº‚³‚¢Bƒ[ƒŠƒ“ƒOƒŠƒXƒg‚̃ƒ“ƒo
  [‘Sˆõ‚Ƀ[ƒ‹‚ðo‚·‚ɂ́A east.balius.com ‚Ì ipchains-list ‚ðŽg‚Á‚ĉº
  ‚³‚¢B

  2.  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ÌŠî‘b

  2.1.  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^‚Ƃ͉½‚ð‚·‚é‚à‚Ì?

  ƒlƒbƒgƒ[ƒN‚ð’Ê‚é‘S‚Ẵgƒ‰ƒtƒBƒbƒN‚́AƒpƒPƒbƒg‚ÌŒ`‚Å‘—‚èo‚³‚ê‚Ü‚·B
  —Ⴆ‚΁A‚±‚̃pƒbƒP[ƒW(50KƒoƒCƒg‚Í‚ ‚é‚Å‚µ‚傤)‚ðƒ_ƒEƒ“ƒ[ƒh‚·‚邱‚Æ
  ‚ŁA1460ƒoƒCƒg‚̃pƒPƒbƒg36ŒÂ‚Ù‚Ç‚ðŽóM‚·‚邱‚Æ‚É‚È‚é‚Å‚µ‚傤(ŽÀÛ‚É‚Í
  ‚»‚Ì‚Æ‚«‚Ç‚«‚É‚æ‚Á‚Ȑ”‚âƒTƒCƒY‚͈قȂè‚Ü‚·)B

  (–ó’: Œ»Ý‚Å‚Í‚±‚Ì•¶‘‚Í100KB‚ð‰z‚¦‚Ä‚¢‚Ü‚·:))

  ŠeƒpƒPƒbƒg‚Í‚»‚ꂪ‚Ç‚±‚ÉŒü‚¯‚ç‚ꂽ‚à‚Ì‚©‚ð‹Lq‚·‚é•”•ª‚©‚çŽn‚Ü‚èA‚Ç‚±
  ‚©‚ç—ˆ‚½‚à‚Ì‚©A‚»‚ê‚©‚çƒpƒPƒbƒg‚ÌŽí—Þ‚ÆŠÇ—ã•K—v‚ȏڍדà—e‚ðŠÜ‚ñ‚Å‚¢
  ‚Ü‚·BƒpƒPƒbƒg‚Ì‚±‚ÌŠJŽn•”•ª‚́Aƒwƒbƒ_‚ƌĂ΂ê‚Ä‚¢‚Ü‚·B‚Ü‚½A“`‘—‚³‚ê
  ‚Ä‚¢‚éŽÀÛ‚̃f[ƒ^‚ðŠÜ‚ñ‚¾ƒpƒPƒbƒg‚ÌŽc‚è‚Ì•”•ª‚́A’ʏíƒ{ƒfƒB‚ƌĂ΂ê‚Ä
  ‚¢‚Ü‚·B

  ƒEƒFƒuEƒgƒ‰ƒtƒBƒbƒNAƒ[ƒ‹‚ƃŠƒ‚[ƒgƒƒOƒCƒ“‚Ì‚½‚ß‚ÉŽg‚í‚ê‚é‚¢‚­‚‚©
  ‚̃vƒƒgƒRƒ‹(—Ⴆ‚Î TCP)‚Í `Ú‘±(ƒRƒlƒNƒVƒ‡ƒ“)'‚Æ‚æ‚΂ê‚éŠT”O‚ðŽg‚¢‚Ü
  ‚·BŽÀÛ‚̃f[ƒ^ƒpƒPƒbƒg‚ª‘—‚èo‚³‚ê‚é‘O‚ɁA`Ž„‚́AÚ‘±‚µ‚½‚¢'A`OK'A
  ‚»‚µ‚Ä`‚ ‚肪‚Æ‚¤'‚Æ‚¢‚Á‚½A(“Á•Ê‚ȃwƒbƒ_‚𔺂¤)FX‚ȃZƒbƒgƒAƒbƒvEƒp
  ƒPƒbƒg‚ðŒðŠ·‚µ‚Ü‚·B

  ƒpƒPƒbƒgEƒtƒBƒ‹ƒ^‚́AƒpƒPƒbƒg‚̃wƒbƒ_‚ðŒ©‚ÄA‚»‚̃pƒPƒbƒg‘S‘Ì‚ð‚Ç‚Ì‚æ
  ‚¤‚ÉŽæ‚舵‚¤‚©‚ðŒˆ’è‚·‚鏬‚³‚ȃ\ƒtƒgƒEƒFƒA‚Å‚·BƒpƒPƒbƒg‚Í‹‘
  ”Û(deny)(‚·‚È‚í‚¿AŽóM‚µ‚È‚©‚Á‚½‚©‚̂悤‚ɁAƒpƒPƒbƒg‚ðŽÌ‚Ä‚é)‚±‚Æ‚ÉŒˆ
  ‚ß‚ç‚ê‚é‚©‚à‚µ‚ê‚È‚¢‚µA‹–‰Â(accept)(‚·‚È‚í‚¿AƒpƒPƒbƒg‚ð’ʉ߂³‚¹‚é)‚·
  ‚邱‚Æ‚É‚È‚é‚©‚à‚µ‚ê‚È‚¢‚µAƒpƒPƒbƒg‚ð•Ô‹p(reject)("‹‘”Û"‚ÆŽ—‚Ä‚¢‚邯
  ‚ê‚ǁAƒpƒPƒbƒg‚Ì”­MŒ³‚É‚»‚Ì‚±‚Æ‚ð’Ê’m‚·‚é)‚·‚é‚©‚à‚µ‚ê‚Ü‚¹‚ñB

  Linux ‚É‚¨‚¢‚ẮAƒpƒPƒbƒgEƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚̓J[ƒlƒ‹‚É‘g‚ݍž‚Ü‚ê‚Ä‚¢‚Ü
  ‚·B‚»‚µ‚āAƒpƒPƒbƒg‚̎戵‚¢‚ÉŠÖ‚µ‚ď­‚µ‚΂©‚èƒgƒŠƒbƒN‚ðŽdŠ|‚¯‚邱‚Æ‚ª
  ‚Å‚«‚Ü‚·‚ªA‚»‚ÌŠî–{“I‚È‹K‘¥‚Í‚ ‚­‚܂Ńwƒbƒ_‚ðŒ©‚ÄAƒpƒPƒbƒg‚ÌŽæ‚舵‚¢
  ‚ðŒˆ’è‚·‚é‚Æ‚¢‚¤‚à‚Ì‚Å‚·B

  2.2.  ‚È‚º?

  ƒRƒ“ƒgƒ[ƒ‹BƒZƒLƒ…ƒŠƒeƒBBŠÄŽ‹B

     ƒRƒ“ƒgƒ[ƒ‹:
        ‚ ‚È‚½‚ª Linux ƒ{ƒbƒNƒX‚ð“à•”‚̃lƒbƒgƒ[ƒN‚ƕʂ̃lƒbƒgƒ[ƒN(—á
        ‚¦‚΁AƒCƒ“ƒ^[ƒlƒbƒg)‚ðŒq‚®‚½‚ß‚ÉŽg‚Á‚Ä‚¢‚é‚È‚çA ‚ ‚È‚½‚ɂ́A“Á
        ’è‚̃gƒ‰ƒtƒBƒbƒN‚¾‚¯‹–‰Â‚µ‚āA‘¼‚Ì‚à‚Ì‚ð‹–‚³‚È‚¢‚悤‚É‚·‚éƒ`ƒƒƒ“
        ƒX‚ª‚ ‚è‚Ü‚·B—Ⴆ‚΁AƒpƒPƒbƒg‚̃wƒbƒ_[‚É‚Í‚ ‚ĐæƒAƒhƒŒƒX ‚ªŠÜ
        ‚Ü‚ê‚Ä‚¢‚āAŠO•”ƒlƒbƒgƒ[ƒN‚Ì‚Æ‚ ‚鏊‚ÖŒü‚©‚¤ƒpƒPƒbƒg‚ð‹‘”Û‚·‚é
        ‚±‚Æ‚ª‚Å‚«‚Ü‚·B•Ê‚Ì—á‚Æ‚µ‚āANetscape ‚ðŽg‚Á‚Ä Dilbert ‚̃A[ƒJ
        ƒCƒu (–ó’: Dilbert ‚Æ‚¢‚¤ƒGƒ“ƒWƒjƒA‚ªŽålŒö‚Ì•—Žh–Ÿ‰æ‚̃TƒCƒgA
        ‚¿‚È‚Ý‚É dilbert ‚̈Ӗ¡‚Í'‚΂©') ‚ɃAƒNƒZƒX‚·‚éê‡‚Å‚·Bƒy[ƒW
        ‚É‚Í doubleclick.net ‚̍L‚ª‚ ‚èA Netscape ‚Í‚»‚ê‚ð‚¢‚»‚¢‚»‚Æ
        ƒ_ƒEƒ“ƒ[ƒh‚·‚邽‚ß‚ÉŽ„‚ÌŽžŠÔ‚ð˜Q”‚Ü‚·BƒpƒPƒbƒgƒtƒBƒ‹ƒ^[‚É
        doubleclick.net Š—L‚̃AƒhƒŒƒX‚©‚ç‚Ì‚Ç‚ñ‚ȃpƒPƒbƒg‚à‹–‰Â‚µ‚È‚¢‚æ
        ‚¤‚ÉŽwŽ¦‚·‚ê‚Ζâ‘è‚Í‰ðŒˆ‚µ‚Ü‚·(‚à‚Á‚Æ‚¢‚¢•û–@‚ª‚ ‚è‚Ü‚·‚¯‚ê‚Ç:
        Junkbuster (–ó’: http://internet.junkbuster.com
        <http://internet.junkbuster.com> ) ‚ðŒ©‚Ä‰º‚³‚¢)B

     ƒZƒLƒ…ƒŠƒeƒB:
        ‚ ‚È‚½‚Ì Linux ƒ{ƒbƒNƒX‚ªƒCƒ“ƒ^[ƒlƒbƒg‚̍¬“ׂƁA’˜³‚µ‚¢‚ ‚È
        ‚½‚Ì‚·‚Ä‚«‚ȃlƒbƒgƒ[ƒN‚ÌŠÔ‚É‚ ‚é—Bˆê‚Ì•¨‚È‚çA‚·‚΂炵‚¢‚±‚Æ
        ‚ɁA‚ ‚È‚½‚͉£‚è‚É‚â‚Á‚Ä—ˆ‚éŽÒ‚ðƒhƒA‚Ì‚Æ‚±‚ë‚Ő§ŒÀ‚·‚邱‚Æ‚ª‚Å‚«
        ‚Ü‚·B—Ⴆ‚΁A‚ ‚È‚½‚̃lƒbƒgƒ[ƒN‚©‚ço‚čs‚­‚à‚͉̂½‚Å‚à‹–‚·‚æ
        ‚¤‚É‚µ‚āAˆ«ˆÓ‚Ì‚ ‚éŠO•”‚©‚ç‚Ì‚æ‚­’m‚ç‚ꂽ `Ping of Death' UŒ‚
        ‚ðŒx‰ú‚·‚é‚悤‚É‚Å‚«‚Ü‚·B•Ê‚Ì—á‚Æ‚µ‚āA‚ ‚È‚½‚Ì Linux ƒ{ƒbƒNƒX
        ‚ɁA‚½‚Æ‚¦‘S‚ẴAƒJƒEƒ“ƒg‚ɃpƒXƒ[ƒh‚ª•t‚¢‚Ä‚¢‚é‚Æ‚µ‚Ä‚àAŠO•”
        ‚ÌŽÒ‚ª telnet ‚µ‚Ä‚­‚邱‚Æ‚ð–]‚Ü‚È‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñB‚½‚Ô‚ñA‚ ‚È
        ‚½‚Í(‘å’ï‚̐lX‚̂悤‚É)ƒCƒ“ƒ^[ƒlƒbƒg‚ð‚½‚¾’­‚ß‚Ä‚¢‚½‚¢‚¾‚¯‚ŁA
        ƒT[ƒo[‚É(D‚ނƍD‚Ü‚¸‚É‚©‚©‚í‚炸)‚Ȃ肽‚­‚È‚¢‚Ì‚Å‚·B’Pƒ‚ɁA
        ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[‚Őڑ±‚ðŠJŽn‚·‚éƒpƒPƒbƒg‚Ì—¬“ü‚ð‹‘”Û‚µ‚āA‚¾‚ê
        ‚É‚àÚ‘±‚³‚ê‚È‚¢‚悤‚É‚µ‚ĉº‚³‚¢B

        (–ó’: "Ž€‚Ìping" ˆÙí‚É’·‘å‚È ICMP ƒpƒPƒbƒg‚È‚Ç‚ðƒlƒbƒgƒ[ƒNÚ
        ‘±‚³‚ꂽƒRƒ“ƒsƒ…[ƒ^‚É‘—‚è‚‚¯‚āAƒVƒXƒeƒ€ƒNƒ‰ƒbƒVƒ…‚âƒT[ƒrƒX‚Ì
        ’âŽ~‚ðˆø‚«‹N‚±‚·UŒ‚‚Ì‚±‚ƁB)

     ŠÄŽ‹:
        ‚Æ‚«‚Ç‚«ƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN’†‚Ɋ‹«Ý’è‚̈«‚¢ƒ}ƒVƒ“‚ª‚ ‚èAŠO‚Ì
        ¢ŠE‚ɃpƒPƒbƒg‚ª˜R‚êo‚é‚悤‚É‚È‚Á‚Ä‚¢‚邱‚Æ‚ª‚ ‚è‚Ü‚·B‚·‚΂炵
        ‚¢‚±‚ƂɁAƒpƒPƒbƒgƒtƒBƒ‹ƒ^[‚͉½‚©ˆÙí‚È‚±‚Æ‚ª‹N‚±‚Á‚½‚Æ‚«‚É‚ ‚È
        ‚½‚É’m‚点‚Ä‚­‚ê‚Ü‚·B‚»‚ê‚É‚æ‚Á‚ĉ½‚ç‚©‚̑Ώˆ‚ª‚Å‚«‚邱‚Æ‚ð’m‚é
        ‚©A‚ ‚é‚¢‚Í‚½‚¾’P‚ÉŽ©•ª‚ª‘FõD‚«‚Ȑ«Ši‚¾‚Æ’m‚邾‚¯‚©‚à‚µ‚ê‚Ü‚¹
        ‚ñB

  2.3.  ‚Ç‚¤‚â‚Á‚Ä?

  2.3.1.  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‹@”\‚ð—LŒø‚É‚µ‚½ƒJ[ƒlƒ‹

  V‚µ‚¢ IP ƒtƒ@ƒCƒAƒEƒH[ƒ‹Eƒ`ƒF[ƒ“‹@”\‚ðŽ‚ÂƒJ[ƒlƒ‹‚ª•K—v‚Å‚·B¡“®
  ì‚µ‚Ä‚¢‚éƒJ[ƒlƒ‹‚ªA‚±‚Ì‹@”\‚ð‘g‚ݍž‚ñ‚¾‚à‚Ì‚©‚Ç‚¤‚©”»’f‚·‚é‚ɂ́A
  /proc/net/ip_fwchains ‚ð’T‚µ‚Ä‚Ý‚Ü‚µ‚傤B‚±‚ꂪ‘¶Ý‚·‚é‚È‚ç‚΁AŠù‚É‘g
  ‚ݍž‚Ü‚ê‚Ä‚¢‚Ü‚·B

  (–ó’: 2.2.xˆÈ~‚̃J[ƒlƒ‹‚ð‚¨Žg‚¢‚̏ꍇ‚́A‘å’ïŠù‚É‘g‚ݍž‚Ü‚ê‚Ä‚¢‚邱
  ‚Æ‚Å‚µ‚傤B)

  ‚à‚µ‚»‚¤‚Å‚È‚¯‚ê‚΁A‚ ‚È‚½‚Í IP ƒtƒ@ƒCƒAƒEƒH[ƒ‹Eƒ`ƒF[ƒ“‚ðŽ‚ÂƒJ[ƒl
  ƒ‹‚ðì‚é•K—v‚ª‚ ‚è‚Ü‚·BÅ‰‚ɁA‚ ‚È‚½‚ª—~‚µ‚¢ƒJ[ƒlƒ‹‚̃\[ƒX‚ðƒ_ƒEƒ“
  ƒ[ƒh‚µ‚Ü‚µ‚傤B‚ ‚È‚½‚̃J[ƒlƒ‹‚ª ƒo[ƒWƒ‡ƒ“ 2.1.102 ˆÈ~‚Ì‚à‚Ì‚È
  ‚çAŒ»ÝŽå—¬‚̃J[ƒlƒ‹‚Å‚ ‚é‚̂ŁA‰ü‚߂ăpƒbƒ`‚ð“–‚Ä‚é•K—v‚Í‚ ‚è‚Ü‚¹
  ‚ñB‚»‚¤‚Å‚È‚¢Žž‚É‚Í‘Oo‚Ì Web ƒy[ƒW‚©‚çƒpƒbƒ`‚ð“üŽè‚µ‚Ä“K—p‚µA‚»‚µ
  ‚ÄŽŸ‚ÉŽ¦‚·‚悤‚Ȑݒè‚ŃJ[ƒlƒ‹‚ð\¬‚µ‚ĉº‚³‚¢B‚à‚µA‚ ‚È‚½‚ª‚±‚ê‚ð‚·
  ‚é•û–@‚ð’m‚ç‚È‚­‚Ä‚àAQ‚Ä‚È‚¢‚Å Kernel-HOWTO ‚ð“Ç‚Ý‚Ü‚µ‚傤B

  (–ó’: Kernel-HOWTO‚Ì–M–ó‚Í http://www.linux.or.jp/JF/JFdocs/Kernel-
  HOWTO.html <http://www.linux.or.jp/JF/JFdocs/Kernel-HOWTO.html> ‚É‚ ‚è
  ‚Ü‚·B)

  ‚ ‚È‚½‚ª2.0-ƒVƒŠ[ƒY‚̃J[ƒlƒ‹‚ɐݒ肷‚é•K—v‚ª‚ ‚éƒRƒ“ƒtƒBƒOƒŒ[ƒVƒ‡ƒ“
  ƒIƒvƒVƒ‡ƒ“‚́AˆÈ‰º‚Ì’Ê‚è‚Å‚·:

  ______________________________________________________________________
          CONFIG_EXPERIMENTAL=y
          CONFIG_FIREWALL=y
          CONFIG_IP_FIREWALL=y
          CONFIG_IP_FIREWALL_CHAINS=y
  ______________________________________________________________________

  2.1 ‚© 2.2 ‚̃VƒŠ[ƒYEƒJ[ƒlƒ‹‚̏ꍇ‚ÍŽŸ‚Ì’Ê‚è‚Å‚·:

  ______________________________________________________________________
          CONFIG_FIREWALL=y
          CONFIG_IP_FIREWALL=y
  ______________________________________________________________________

  ƒc[ƒ‹‚Å‚ ‚é ipchains ƒvƒƒOƒ‰ƒ€‚́AƒJ[ƒlƒ‹‚ɑ΂µ‚Ä‚Ç‚ñ‚ȃpƒPƒbƒg‚ð
  ƒtƒBƒ‹ƒ^‚·‚é‚ׂ«‚©‚ɂ‚¢‚Ä’Ê’m‚·‚邽‚ß‚Ì‚à‚Ì‚Å‚·B‚ ‚È‚½‚ªƒvƒƒOƒ‰ƒ}‚Å
  ‚ ‚é‚©AŠï“Á‚ȐlŠÔ‚Å‚È‚¢ŒÀ‚èA‚±‚ꂪƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚𐧌䂷‚é•û
  –@‚Æ‚È‚è‚Ü‚·B

  2.3.2.  ipchains

  ipchains ƒc[ƒ‹‚́AƒJ[ƒlƒ‹‚̃pƒPƒbƒgEƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ÉŠÖ‚·‚éƒZƒNƒVƒ‡
  ƒ“‚©‚烋[ƒ‹‚ð‘}“ü‚µ‚½‚èíœ‚µ‚½‚肵‚Ü‚·B‚±‚ê‚́A‚ ‚È‚½‚ª‚½‚Æ‚¦‰½‚ðÝ
  ’肵‚Ä‚àA‚»‚ꂪÄ‹N“®‚É‚æ‚Á‚ďÁ‚¦‚Ä‚µ‚Ü‚¤‚±‚Æ‚ðˆÓ–¡‚µ‚Ä‚¢‚Ü‚·BŽŸ‰ñA
  Linux ‚ªƒu[ƒg‚³‚ê‚éÛ‚ɁA‚»‚ê‚ç‚ðŠmŽÀ‚É–ß‚·‚·‚é•û–@‚ɂ‚¢‚ẮAŽŸ‚̐ß
  ``ƒtƒBƒ‹ƒ^‹K‘¥‚ðP‹v“I‚É‚·‚é‚É‚Í'' ‚ðŽQÆ‚µ‚ĉº‚³‚¢B

  ipchains ‚͈ȑO‚Ü‚ÅIPƒtƒ@ƒCƒAƒEƒH[ƒ‹‚ðŽÀŒ»‚·‚邽‚ß‚ÉŽg‚í‚ê‚Ä‚¢‚½
  ipfwadm ‚Æ’u‚«Š·‚¦‚ç‚ê‚邱‚Æ‚É‚È‚è‚Ü‚·B–ð‚É—§‚ƒXƒNƒŠƒvƒg‚̃Zƒbƒg‚ªA
  ŽŸ‚Ì ipchains ‚̃AƒhƒŒƒX‚©‚ç“üŽè‰Â”\‚Å‚·:

  http://netfilter.filewatcher.org/ipchains/ipchains-
  scripts-1.1.2.tar.gz
  <http://netfilter.filewatcher.org/ipchains/ipchains-
  scripts-1.1.2.tar.gz>

  ‚±‚ê‚ɂ͈ȑOs‚í‚ê‚Ä‚¢‚½‚Ì‚Æ“¯‚¶‚悤‚ȃXƒ^ƒCƒ‹‚ŃpƒPƒbƒgEƒtƒBƒ‹ƒ^ƒŠƒ“
  ƒO‚ðs‚킹‚邽‚ß‚Ì ipfwadm-wrapper ‚ƌĂ΂ê‚Ä‚¢‚éƒVƒFƒ‹ƒXƒNƒŠƒvƒg‚ðŠÜ
  ‚ñ‚Å‚¢‚Ü‚·B‚ ‚È‚½‚ª ipfwadm (ipchains‚Æ”ä‚ׁA‚æ‚è’x‚­‚āAˆø”A‚»‚Ì‘¼
  ‚ðƒ`ƒFƒbƒN‚µ‚È‚¢“™‚Ì‚à‚Ì)‚ðŽg‚¤ƒVƒXƒeƒ€‚ðƒAƒbƒvƒOƒŒ[ƒh‚·‚éŽè‚ÁŽæ‚葁
  ‚¢•û–@‚ª—~‚µ‚­‚È‚¢ŒÀ‚èA‚ ‚È‚½‚Í‘½•ª‚±‚̃XƒNƒŠƒvƒg‚ðŽg‚¤‚ׂ«‚Å‚Í‚È‚¢‚Å
  ‚µ‚傤B‚»‚¤‚¢‚¤•û‚É‚Í‚ ‚܂肱‚Ì HOWTO ‚à•K—v‚Æ‚Í‚³‚ê‚È‚¢‚±‚Æ‚ÆŽv‚¢‚Ü
  ‚·B

  ipfwadm ŠÖ˜A‚̏ڍׂɂ‚¢‚ẮA•t˜^: ``ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ''
  ‚â•t˜^: ```ipfwadm-wrapper'ƒXƒNƒŠƒvƒg‚ðŽg‚¤'' ‚ð‚²——‰º‚³‚¢B

  2.3.3.  ƒtƒBƒ‹ƒ^‹K‘¥‚ðP‹v“I‚É‚·‚é‚É‚Í

  ‚ ‚È‚½‚ÌŒ»Ý‚̃tƒ@ƒCƒAƒEƒH[ƒ‹Ý’è‚́AƒJ[ƒlƒ‹‚ÉŠi”[‚³‚ê‚āA‚±‚̂悤‚É
  Ä‹N“®Žž‚É‚ÍŽ¸‚í‚ê‚Ä‚µ‚Ü‚¢‚Ü‚·B‚ ‚È‚½‚̃‹[ƒ‹‚ðP‹v“I‚É‚·‚邽‚ß‚É
  `ipchains-save' ‚Æ `ipchains-restore' ƒXƒNƒŠƒvƒg‚ðŽg‚¤‚±‚Æ‚ð‚¨Š©‚ß‚µ‚Ü
  ‚·B‚±‚ê‚ðŽg‚¤‚ɂ́A‚Ü‚¸‚ ‚È‚½‚̃‹[ƒ‹‚ðÝ’肵‚āAŽŸ‚̂悤‚ɃRƒ}ƒ“ƒh‚ð
  ŽÀs‚µ‚Ü‚·(root ‚Æ‚µ‚ÄŽÀs‚µ‚ĉº‚³‚¢):

       # ipchains-save > /etc/ipchains.rules
       #

  ƒXƒNƒŠƒvƒg‚ÍŽŸ‚̂悤‚ɍì‚Á‚Ä‚¨‚«‚Ü‚·:

  #! /bin/sh
  # ƒpƒPƒbƒgƒtƒBƒ‹ƒ^§Œä‚Ì‚½‚߂̃XƒNƒŠƒvƒg

  # ƒ‹[ƒ‹‚ª‚È‚¯‚ê‚Ή½‚à‚µ‚È‚¢
  [ -f /etc/ipchains.rules ] || exit 0

  case "$1" in
      start)
          echo -n "Turning on packet filtering:"
          /sbin/ipchains-restore < /etc/ipchains.rules || exit 1
          echo 1 > /proc/sys/net/ipv4/ip_forward
          echo "."
          ;;
      stop)
          echo -n "Turning off packet filtering:"
          echo 0 > /proc/sys/net/ipv4/ip_forward
          /sbin/ipchains -F
          /sbin/ipchains -X
          /sbin/ipchains -P input ACCEPT
          /sbin/ipchains -P output ACCEPT
          /sbin/ipchains -P forward ACCEPT
          echo "."
          ;;
      *)
          echo "Usage: /etc/init.d/packetfilter {start|stop}"
          exit 1
          ;;
  esac

  exit 0

  ‚±‚ꂪ‹N“®Žž‚̍ŏ‰‚Ì‚¤‚¿‚ÉŽÀs‚³‚ê‚é‚悤‚É‚µ‚Ü‚·B•MŽÒ‚̃P[ƒX (Debian
  2.1) ‚ł́A `S39packetfilter' ‚Æ‚¢‚¤ƒVƒ“ƒ{ƒŠƒbƒNƒŠƒ“ƒN‚ð `/etc/rcS.d'
  ƒfƒBƒŒƒNƒgƒŠ‚ɍì‚Á‚Ä‚ ‚è‚Ü‚·(‚±‚ê‚́A S40network ‚Ì‘O‚ÉŽÀs‚³‚ê‚Ü‚·)B

  (–ó’: uÅ‰‚Ì‚¤‚¿v‚Æ‚¢‚¤‚̂́A‹N“®ŽžAƒlƒbƒgƒ[ƒN‚ɑ΂µ‚ĒʐM‚ª‰Â
  ”\‚Æ‚È‚éó‘ԈȑO‚ɍs‚¤‚Æ‚¢‚¤ˆÓ–¡‚Å‚·Bƒlƒbƒgƒ[ƒN‚Ì‘¼‚̃T[ƒrƒX‚È‚Ç‚ª
  ‹N“®‚µ‚½‚ ‚ƂɃtƒ@ƒCƒAƒEƒI[ƒ‹‚ðÝ’è‚·‚é‚ƁA‘S‚­Ý’肳‚ê‚Ä‚¢‚È‚¢‚킸‚©
  ‚ȏuŠÔ‚ð‚‚¢‚Ä"ˆ«‚¢‚â‚Â"‚ª“ü‚荞‚ފ댯«‚ª‚ ‚è‚Ü‚·B)

  3.  ‚à‚¤A¬—‚µ‚Ä—ˆ‚½! ƒ‹[ƒeƒBƒ“ƒO‚¾‚́Aƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚¾‚́Aƒ|[
  ƒgƒtƒHƒ[ƒfƒBƒ“ƒO‚¾‚́AŽ©“®ƒtƒHƒ[ƒfƒBƒ“ƒO(ipautofw)‚¾‚Ì‚Á‚ācB

  ‚±‚Ì HOWTO ‚́AƒpƒPƒbƒgEƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ɂ‚¢‚ďq‚ׂ½‚à‚Ì‚Å‚·B‚»‚ê‚Í
  ƒpƒPƒbƒg‚ª’ʉ߂·‚é‚Ì‚ð‹–‚·‚©‚Ç‚¤‚©‚ɂ‚¢‚ÄŒˆ‚߂邱‚Æ‚ðˆÓ–¡‚µ‚Ä‚¢‚Ü‚·B
  ‚µ‚©‚µ‚È‚ª‚çALinux‚Í‚¢‚í‚΃nƒbƒJ[’B‚Ì—V‚яê‚̂悤‚È‚à‚Ì‚Å‚·‚̂ŁA‚¨
  ‚»‚ç‚­‚»‚êˆÈã‚Ì‹@”\‚ðŽÀŒ»‚µ‚½‚¢‚ÆŽv‚¤‚±‚Æ‚Å‚µ‚傤B

  1‚‚̖â‘è‚́A–{—ˆ•Ê‚ÈŠT”O‚Å‚ ‚é‚Í‚¸‚̃}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚Æ“§‰ß“I‚ȃvƒ
  ƒLƒV‚̐§Œä‚Ì‚½‚ß‚É“¯‚¶ƒc[ƒ‹ (``ipchains'') ‚ªŽg‚í‚ê‚邱‚Æ‚Å‚·(Œ»Ý‚Ì
  Linux ‚Å‚ÌŽÀ‘•‚ł́A‚±‚ê‚炪•sŽ©‘R‚È‚©‚½‚¿‚Å‚¢‚Á‚µ‚å‚É‚È‚Á‚Ä‚¨‚èA‚ ‚½
  ‚©‚à‚»‚ê‚炪–§Ú‚ÉŠÖ˜A‚ª‚ ‚é‚Æ‚¢‚¤ˆóÛ‚ð—^‚¦‚Ä‚µ‚Ü‚¢‚Ü‚·)B

  (–ó’: ƒJ[ƒlƒ‹ 2.4.x Œn‚ł́A‚±‚ê‚ç‚Ì‹@”\‚Í‚³‚ç‚É“‡‹­‰»‚³‚ê‚Ä‚¢‚Ü
  ‚·B‚»‚ê‚ç‚̃J[ƒlƒ‹‚ð‚¨Žg‚¢‚Ì•û‚́ALinux 2.4 NAT
  HOWTO(http://netfilter.kernelnotes.org/unreliable-guides/NAT-
  HOWTO.html
  <http://netfilter.kernelnotes.org/unreliable-guides/NAT-HOWTO.html>)‚à
  ‚²——‰º‚³‚¢B JFƒvƒƒWƒFƒNƒg‚É‚æ‚é–M
  –ó(http://www.linux.or.jp/JF/JFdocs/NAT-HOWTO.html
  <http://www.linux.or.jp/JF/JFdocs/NAT-HOWTO.html>)‚à‚ ‚è‚Ü‚·B)

  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ƃvƒƒLƒV‚ɂ‚¢‚Ă͕ʁX‚Ì HOWTO •¶‘‚È‚Ç‚É‚æ‚Á‚Ä–Ô
  —…‚³‚êAŽ©“®ƒtƒHƒ[ƒfƒBƒ“ƒO‚ƃ|[ƒgEƒtƒHƒ[ƒfƒBƒ“ƒO‹@”\‚͕ʁX‚̃c[
  ƒ‹‚Ő§Œä‚³‚ê‚Ü‚·B‚µ‚©‚µA‘½‚­‚̐lX‚©‚ç‚»‚ê‚ç‚ɂ‚¢‚Ä‚Ì–â‚¢‡‚킹‚ð‚¤
  ‚¯‚Ä‚¢‚Ü‚·‚̂ŁA‚±‚±‚ł͈ê˜A‚̈ê”Ê“I‚Æ‚¨‚à‚í‚ê‚éƒVƒiƒŠƒI‚¢‚­‚‚©‚ƁA‚Ç
  ‚̂悤‚É‚·‚ê‚΂悢‚©‚Æ‚¢‚¤Ý’è‚ð’ñŽ¦‚µ‚Ü‚·B‚È‚¨AŠeƒZƒbƒgƒAƒbƒv‚̃Z
  ƒLƒ…ƒŠƒeƒB‚ÉŠÖ‚·‚é’·Š‚ɂ‚¢‚ẮA‚±‚±‚Ř_‹c‚µ‚Ü‚¹‚ñB

  3.1.  Rusty ‚̃}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ÉŠÖ‚·‚é 3‚‚̎wj

  ‚±‚ê‚́A‚ ‚È‚½‚ÌŠO•”ƒCƒ“ƒ^ƒtƒF[ƒX‚ª `ppp0' ‚Å‚ ‚é‚Ɖ¼’肵‚Ä‚¢‚Ü‚·B
  ifconfig ƒRƒ}ƒ“ƒh‚ð‚‚©‚Á‚āA‚ ‚È‚½‚̊‹«‚ɍ‡‚¤‚悤‚É“Ç‚Ý‘Ö‚¦‚ĉº‚³
  ‚¢B

       # ipchains -P forward DENY
       # ipchains -A forward -i ppp0 -j MASQ
       # echo 1 > /proc/sys/net/ipv4/ip_forward

  3.2.  Ž©”­“I‚Ȑé“`:  WatchGuard ‚Å‹K§‚·‚é

  Žs”̂̃tƒ@ƒCƒAƒEƒH[ƒ‹ê—p‹@‚ðw“ü‚·‚邱‚Æ‚à‚Å‚«‚Ü‚·B—D‚ꂽê—p‹@‚Ì‚Ð
  ‚Ƃ‚Ƃµ‚āAWatchGuard ŽÐ‚Ì FireBox ‚ª‚ ‚è‚Ü‚·B FireBox ‚ª—D‚ê‚Ä‚¢‚é
  ‚ÆŽv‚¤‚̂́A‚킽‚µ‚ª‹C‚É“ü‚Á‚Ä‚¢‚é‚©‚ç‚Å‚ ‚èA‚»‚ꂪˆÀ‘S‚¾‚©‚ç‚Å‚ 
  ‚èALinux ƒx[ƒX‚Å“®ì‚µ‚Ä‚¢‚é‚©‚ç‚Å‚·B‚Ü‚½A‚±‚̉ïŽÐ‚́Aipchains ‚Ì
  ƒƒCƒ“ƒeƒiƒ“ƒX‚ƁA(2.4 ŒnƒJ[ƒlƒ‹—p‚Ì)V‚µ‚¢ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̃R[ƒh‚Ì
  ‚½‚ß‚ÉŽ‘‹à’ñ‹Ÿ‚µ‚Ä‚­‚ꂽ‚©‚ç‚Å‚·B‚‚܂èA‚킽‚µ‚ªŠF‚³‚ñ‚Ì‚½‚߂ɍì‹Æ‚ð
  ‚µ‚Ä‚¢‚éŠÔA WatchGuard ŽÐ‚́A‚킽‚µ‚̐¶Šˆ‚ðŽx‚¦‚Ä‚­‚ꂽ‚킯‚Å‚·B‚»‚¤
  ‚¢‚¤‚킯‚ŁA”Þ‚ç‚̐»•i‚ɂ‚¢‚Ä‚àŒäˆêlŠè‚¢‚Ü‚·B

  http://www.watchguard.com <http://www.watchguard.com>

  (–ó’: WatchGuardŽÐ‚Ì“ú–{‘“à‚̃ŠƒZƒ‰[‚àA‚±‚̃y[ƒW‚©‚çŽèŒJ‚邱‚Æ‚ª
  ‚Å‚«‚Ü‚·B)

  3.3.  ƒtƒ@ƒCƒAƒEƒH[ƒ‹“I“®ì‚É‹¤’ʂȐݒè

  ‚ ‚È‚½‚́A littlecorp.com ‚Æ‚¢‚¤ƒhƒƒCƒ“–¼‚ŃVƒXƒeƒ€‚ð“®‚©‚µ‚Ä‚¢‚Ü‚·B
  ‚»‚µ‚Ä“à•”ƒlƒbƒgƒ[ƒN‚ðŽ‚¿AƒCƒ“ƒ^[ƒlƒbƒg‚ɑ΂µ‚āAIPƒAƒhƒŒƒX‚ª
  1.2.3.4 ‚Å‚ ‚é (firewall.littlecorp.com) ‚Æ‚¢‚¤ƒRƒ“ƒsƒ…[ƒ^‚É1‰ñü‚̃_
  ƒCƒ„ƒ‹ƒAƒbƒv(PPP)ƒRƒlƒNƒVƒ‡ƒ“‚ðŽ‚Á‚Ä‚¢‚Ü‚·B‚ ‚È‚½‚̓C[ƒTƒlƒbƒg‚É‚æ
  ‚郍[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚ð\’z‚µ‚Ä‚¨‚èA‚ ‚È‚½‚̌l—pƒRƒ“ƒsƒ…[ƒ^‚Í
  "myhost" ‚ƌĂ΂ê‚Ä‚¢‚Ü‚·B

  ‚±‚̃ZƒNƒVƒ‡ƒ“‚ł́Aˆê”Ê“I‚Æ‚¨‚à‚í‚ê‚é‚¢‚­‚‚©‚Ì”z’u—á‚ł̐ݒè‚ɂ‚¢‚Ä
  Ú‚µ‚­à–¾‚µ‚Ü‚·B‚»‚ê‚ç‚Í”÷–­‚ɈقȂè‚Ü‚·‚̂ŁA’ˆÓ[‚­“ǂݐi‚߂ĉº‚³
  ‚¢B

  3.3.1.  ƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN: “`““I‚ȃvƒƒLƒV

  ‚±‚̃VƒiƒŠƒI‚ł́Aƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚©‚ç‚̃pƒPƒbƒg‚́AƒCƒ“ƒ^[ƒlƒbƒg
  ‚ðs‚«—ˆ‚·‚邱‚Æ‚Í‚ ‚è‚Ü‚¹‚ñBƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚Ì IP ƒAƒhƒŒƒX‚́A
  RFC1918 ‚ɂăvƒ‰ƒCƒx[ƒg‚ȃCƒ“ƒ^[ƒlƒbƒgŠÂ‹«‚Ì‚½‚ß‚É—pˆÓ‚³‚ê‚Ä‚¢‚éƒAƒh
  ƒŒƒX(‚·‚È‚í‚¿ 10.*.*.*, 172.16.*.*-172.31.*.* ‚Ü‚½‚Í 192.168.*.*)‚ðŠ„
  ‚è“–‚Ä‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  ƒCƒ“ƒ^[ƒlƒbƒg‚ɐڑ±‚·‚é—Bˆê‚Ì•û–@‚̓tƒ@ƒCƒAƒEƒH[ƒ‹‚ɐڑ±‚·‚邱‚ƂŁA
  ‚±‚̃Rƒ“ƒsƒ…[ƒ^‚ª—¼•û‚̃lƒbƒgƒ[ƒN(–ó’: ƒCƒ“ƒ^[ƒlƒbƒg‚ƃ[ƒJƒ‹
  ƒlƒbƒgƒ[ƒN)‚É’¼Ú‚‚Ȃª‚Á‚Ä‚¢‚Ü‚·B‚±‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚ŃvƒƒL
  ƒV‚ƌĂ΂ê‚éƒ\ƒtƒg‚ð“®‚©‚·‚±‚Æ‚É‚È‚è‚Ü‚·(‚±‚ê‚Í FTP AƒEƒFƒuEƒAƒNƒZ
  ƒXA telnet A RealAudio A Usenet News ‚⑼‚̃T[ƒrƒX‚ɂ‚¢‚āA"‘ã
  —"‚Æ‚µ‚Ä“­‚«‚Ü‚·)BÚ×‚ɂ‚¢‚Ä‚Í Firewall HOWTO ‚ðŒ©‚Ü‚µ‚傤B

  (–ó’:  "Firewall HOWTO" ‚ÌŒ´•¶‚Í
  http://www.linuxdoc.org/HOWTO/Firewall-HOWTO.html
  <http://www.linuxdoc.org/HOWTO/Firewall-HOWTO.html> ‚É‚ ‚è‚Ü‚·B JFƒv
  ƒƒWƒFƒNƒg‚É‚æ‚é–M–ó‚Í‚Ü‚¾ì‹Æ’†‚Å‚·B)

  ‚ ‚È‚½‚ªƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃AƒNƒZƒX‚Å–]‚ÞƒT[ƒrƒX‚ɂ‚¢‚ẮA•K‚¸ƒtƒ@ƒC
  ƒAƒEƒH[ƒ‹ã‚̃vƒƒLƒV‚ŃTƒ|[ƒg‚³‚ꂽƒT[ƒrƒX‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñ(‚µ
  ‚©‚µAŒãq‚Ì ``§ŒÀ‚³‚ꂽ“à•”ƒT[ƒrƒX'' ‚ðŽQÆ‚µ‚ĉº‚³‚¢)B

  —á: ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃EƒFƒuEƒAƒNƒZƒX‚ð‹–
  ‚·

  1. ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚́A192.168.1.*‚ðŠ„‚è“–‚Ä‚ç‚ꂽ•¡”‚̔Ԓn‚©
     ‚ç‚È‚èAIPƒAƒhƒŒƒX‚ª192.168.1.100‚Í"myhost"‚ɁAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̃C
     [ƒTƒlƒbƒgEƒCƒ“ƒ^ƒtƒF[ƒX‚É‚Í192.168.1.1‚ªŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢‚Ü‚·B

  2. ƒEƒFƒuEƒvƒƒLƒV(—Ⴆ‚Î"squid")‚́Aƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚ɃCƒ“ƒXƒg[
     ƒ‹‚³‚ê‚Ä‚¨‚èƒ|[ƒg8080‚Å“®‚¢‚Ä‚¢‚Ü‚·B

  3. ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚ÌNetscape‚́AƒvƒƒLƒV‚Æ‚µ‚ătƒ@ƒCƒAƒEƒH[
     ƒ‹‚̃|[ƒg8080‚ðŽg‚¤‚悤‚ɐݒ肳‚ê‚Ä‚¢‚Ü‚·B

  4. DNS‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚Ì’†‚Őݒ肳‚ê‚é•K—v‚Í‚ ‚è‚Ü‚¹‚ñB

  5. DNS‚́Aƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚Őݒ肳‚ê‚é•K—v‚ª‚ ‚è‚Ü‚·B

  6. ƒfƒtƒHƒ‹ƒgEƒ‹[ƒg(•Ê–¼AƒQ[ƒgƒEƒFƒC)‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN
     ‚Ì’†‚Őݒ肳‚ê‚é•K—v‚Í‚ ‚è‚Ü‚¹‚ñB

  myhost ã‚Ì Netscape ‚©‚çA http://slashdot.org ‚̃y[ƒW‚ðŒ©‚é

  1.  Netscape ‚̓tƒ@ƒCƒAƒEƒH[ƒ‹‚̃|[ƒg8080‚ɐڑ±‚µA myhost ã‚̃|[
     ƒg1050‚ðŽg‚Á‚Ä "http://slashdot.org" ‚̃EƒFƒuEƒy[ƒW‚ðŒ©‚é‚悤‚É
     ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Ɉ˗Š‚µ‚Ü‚·B

  2. ƒvƒƒLƒV‚Í "slashdot.org" ‚Æ‚¢‚¤–¼‘O‚𒲂ׂāA "207.218.152.131" ‚Æ
     ‚¢‚¤IPƒAƒhƒŒƒX‚𓾂܂·B‚»‚ê‚©‚çƒtƒ@ƒCƒAƒEƒH[ƒ‹‚ÌŠO•”ƒCƒ“ƒ^ƒtƒF[
     ƒX(–ó’: ppp0 ‚È‚Ç)‚̏ã‚Ń|[ƒg1025‚ðŽg‚Á‚āA‚»‚Ì IP ƒAƒhƒŒƒX‚ɑ΂µ
     ‚ăEƒFƒuEƒT[ƒo(ƒ|[ƒg80)‚ŃEƒFƒuEƒy[ƒW‚ð—v‹‚µ‚Ü‚·B

  3. ‘ŠŽè‚̃EƒFƒuEƒT[ƒo‚ɑ΂·‚éÚ‘±‚©‚çƒEƒFƒuEƒy[ƒW‚ðŽó‚¯Žæ‚é‚ƁA‚»
     ‚ê‚ÍNetscape‚ւ̐ڑ±‚Öƒf[ƒ^‚ªƒRƒs[‚³‚ê‚Ü‚·B

  4. Netscape‚́Aƒy[ƒW‚ð•\Ž¦‚µ‚Ü‚·B

  ‚‚܂èA slashdot.org ‚Ì‘¤‚©‚猩‚é‚ƁA 1.2.3.4 (ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Ì PPP
  ƒCƒ“ƒ^ƒtƒF[ƒX)ƒ|[ƒg1025‚©‚çA 207.218.152.131 (slashdot.org)ƒ|[
  ƒg80‚܂Őڑ±‚³‚ê‚邱‚Æ‚É‚È‚è‚Ü‚·B myhost ‚Ì‘¤‚©‚猩‚é‚ƁA 192.168.1.1
  (ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̃C[ƒTƒlƒbƒgEƒCƒ“ƒ^ƒtƒF[ƒX)‚̃|[ƒg8080‚Æ
  192.168.1.100(myhost)‚̃|[ƒg1050‚ªÚ‘±‚³‚ê‚邱‚Æ‚É‚È‚è‚Ü‚·B

  3.3.2.  ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN: “§‰ß“I‚ȃvƒƒLƒV

  ‚±‚̃VƒiƒŠƒI‚ł́Aƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚©‚ç‚̃pƒPƒbƒg‚́AƒCƒ“ƒ^[ƒlƒbƒg
  ‚ðs‚«—ˆ‚·‚邱‚Æ‚Í‚ ‚è‚Ü‚¹‚ñBƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚Ì IP ƒAƒhƒŒƒX‚́A
  RFC1918 ‚ɂăvƒ‰ƒCƒx[ƒg‚ȃCƒ“ƒ^[ƒlƒbƒgŠÂ‹«‚Ì‚½‚ß‚É—pˆÓ‚³‚ê‚Ä‚¢‚éƒAƒh
  ƒŒƒX(‚·‚È‚í‚¿ 10.*.*.* A 172.16.*.*-172.31.*.* ‚Ü‚½‚Í 192.168.*.*)‚ð
  Š„‚è“–‚Ä‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  ƒCƒ“ƒ^[ƒlƒbƒg‚ɐڑ±‚·‚é—Bˆê‚Ì•û–@‚̓tƒ@ƒCƒAƒEƒH[ƒ‹‚ɐڑ±‚·‚邱‚ƂŁA
  ‚±‚̃Rƒ“ƒsƒ…[ƒ^‚ª—¼•û‚̃lƒbƒgƒ[ƒN(–ó’: ƒCƒ“ƒ^[ƒlƒbƒg‚ƃ[ƒJƒ‹
  ƒlƒbƒgƒ[ƒN)‚É’¼Ú‚‚Ȃª‚Á‚Ä‚¢‚Ü‚·B‚±‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚Å"“§‰ß“I
  ‚ȃvƒƒLƒV"‚ƌĂ΂ê‚éƒ\ƒtƒg‚ð“®‚©‚·‚±‚Æ‚É‚È‚è‚Ü‚·‚ªA‚±‚±‚ł̓J[ƒlƒ‹
  ‚ªo—̓pƒPƒbƒg‚ðŠO•”‚É‘—‚é‘ã‚è‚ɁA“§‰ß“I‚ȃvƒƒLƒV‚É‘—‚èo‚·‚±‚Æ‚É‚È‚è
  ‚Ü‚· (‚·‚È‚í‚¿A‹U‚̃‹[ƒeƒBƒ“ƒO‚ðs‚¤‚悤‚É‚È‚è‚Ü‚·)B

  “§‰ß“I‚ȃvƒƒLƒV‚ð“®‚©‚·‚Æ‚¢‚¤‚±‚Ƃ́AƒNƒ‰ƒCƒAƒ“ƒg‚̓vƒƒLƒV‚Ì‘¶Ý‚ðˆÓ
  Ž¯‚µ‚È‚­‚Ä‚à‚æ‚¢‚Æ‚¢‚¤‚±‚Æ‚Å‚·B

  ‚ ‚È‚½‚ªƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃AƒNƒZƒX‚Å–]‚ÞƒT[ƒrƒX‚ɂ‚¢‚ẮA•K‚¸ƒtƒ@ƒC
  ƒAƒEƒH[ƒ‹ã‚̃vƒƒLƒV‚ŃTƒ|[ƒg‚³‚ꂽƒT[ƒrƒX‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñ(‚µ
  ‚©‚µAŒãq‚Ì ``§ŒÀ‚³‚ꂽ“à•”ƒT[ƒrƒX'' ‚ðŽQÆ‚µ‚ĉº‚³‚¢)B

  —á: ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃EƒFƒuEƒAƒNƒZƒX‚ð‹–
  ‚·

  1. ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚́A 192.168.1.* ‚ðŠ„‚è“–‚Ä‚ç‚ꂽ•¡”‚̔Ԓn
     ‚©‚ç‚È‚èA IP ƒAƒhƒŒƒX‚ª 192.168.1.100 ‚Í myhost ‚ɁAƒtƒ@ƒCƒAƒEƒH[
     ƒ‹‚̃C[ƒTƒlƒbƒgEƒCƒ“ƒ^ƒtƒF[ƒX‚É‚Í 192.168.1.1 ‚ªŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢
     ‚Ü‚·B

  2. “§‰ß“I‚ȃEƒFƒuEƒvƒƒLƒV(squid ‚ɑ΂·‚邱‚Ì—p“r‚Ì‚½‚߂̃pƒbƒ`‚ª‚¢‚­
     ‚‚©‚ ‚é‚ÆŽv‚¢‚Ü‚·B‚ ‚é‚¢‚Í "transproxy" ‚ðŽŽ‚·‚Ì‚à‚¢‚¢‚©‚à)‚̓Cƒ“
     ƒXƒg[ƒ‹‚³‚ê‚āAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚Ń|[ƒg8080‚É‚Ä“®‚¢‚Ä‚¢‚Ü‚·B

  3. ƒJ[ƒlƒ‹‚Í ipchains ‚ðŽg‚Á‚ă|[ƒg80‚̐ڑ±‚ðƒvƒƒLƒV‚ÉŒü‚¯‚È‚¨‚·‚æ
     ‚¤‚ÉŽwŽ¦‚³‚ê‚Ä‚¢‚Ü‚·B

  4. ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚Ì Netscape ‚́A‚ ‚½‚©‚à’¼ÚÚ‘±‚·‚é‚悤‚É
     Ý’肵‚Ü‚·B

  5. DNS ‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒNã‚ɐݒ肳‚ê‚Ä‚¢‚é•K—v‚ª‚ ‚è‚Ü‚·(‚·
     ‚È‚í‚¿A‚ ‚È‚½‚̓tƒ@ƒCƒAƒEƒH[ƒ‹‚̏ã‚ł́u‘㗝v‚Æ‚µ‚Ä DNS ƒT[ƒo‚ð
     ŽÀs‚·‚é•K—v‚ª‚ ‚è‚Ü‚·)B

     (–ó’:  ‚‚܂èAƒNƒ‰ƒCƒAƒ“ƒg‚©‚ç‚Ì–¼‘O‰ðŒˆ‚̏ˆ—‚ð‚·‚×‚Äƒvƒ‰ƒCƒx[
     ƒgƒlƒbƒgƒ[ƒN“à‚Ì DNS ‚Řd‚í‚È‚¯‚ê‚΂Ȃç‚È‚¢‚Æ‚¢‚¤‚±‚Æ‚Å‚·B‚³‚à‚È
     ‚¢‚ƁA–¼‘O‰ðŒˆ‚Ì‚½‚߂̃pƒPƒbƒg‚ªƒNƒ‰ƒCƒAƒ“ƒg‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚ɏo
     ‚Ä‚µ‚Ü‚¢‚Ü‚·B)

  6. ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚ɃpƒPƒbƒg‚𑗂邽‚߂Ƀvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN“à‚É
     ƒfƒtƒHƒ‹ƒgEƒ‹[ƒg(•Ê–¼AƒQ[ƒgƒEƒFƒC)‚ðÝ’è‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B

  myhost ‚Ì Netscape ‚©‚çAhttp://slashdot.org ‚ðŒ©‚éB

  1. Netscape‚́A "slashdot.org" ‚Æ‚¢‚¤–¼‘O‚𒲂ׂāA 207.218.152.131 ‚Æ
     ‚¢‚¤ IP ƒAƒhƒŒƒX‚𓾂܂·B‚»‚µ‚āA‚»‚Ì IP ƒAƒhƒŒƒX‚ɑ΂µ‚ă|[
     ƒg1050‚ɂĐڑ±‚µAƒEƒFƒuƒT[ƒo(ƒ|[ƒg80)‚Öƒy[ƒWƒf[ƒ^‚ð—v‹‚µ‚Ü
     ‚·B

  2. slashdot.org (ƒ|[ƒg80)‚Ö‚Ì myhost (ƒ|[ƒg1050)‚©‚ç‚̃pƒPƒbƒg‚̓tƒ@
     ƒCƒAƒEƒH[ƒ‹‚ðŒo—R‚µ‚Ü‚·‚ªA‚»‚ê‚ç‚̓|[ƒg8080‚̏ã‚Å‘Ò‚Á‚Ä‚¢‚铧‰ß
     “I‚ȃvƒƒLƒV‚ÉŒü‚¯’¼‚³‚ê‚Ü‚·B“§‰ß“I‚ȃvƒƒLƒV‚́A 207.218.152.131
     ‚̃|[ƒg80(‚à‚Æ‚à‚ƃNƒ‰ƒCƒAƒ“ƒg‚©‚ç‚̃pƒPƒbƒg‚ÉŽw’肳‚ê‚Ä‚¢‚½ˆ¶
     æ)‚ɑ΂µ‚āA(ƒ[ƒJƒ‹‚ȃ|[ƒg1025‚ðŽg‚Á‚Ä)Ú‘±‚ðs‚¢‚Ü‚·B

  3. ƒvƒƒLƒV‚Í‚»‚̐ڑ±‚É‚æ‚Á‚ăEƒFƒuEƒT[ƒo‚©‚çƒy[ƒW‚ðŽó‚¯Žæ‚èA
     Netscape ‚ɑ΂·‚éÚ‘±‚É‚»‚̃f[ƒ^‚ðƒRƒs[‚µ‚Ü‚·B

  4. Netscape‚́Aƒy[ƒW‚ð•\Ž¦‚µ‚Ü‚·B

  ‚‚܂èA slashdot.org ‚©‚猩‚é‚ƁAÚ‘±‚Í‚Í 1.2.3.4 (ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Ì
  PPP ƒCƒ“ƒ^ƒtƒF[ƒX)ƒ|[ƒg1025‚©‚çA 207.218.152.131 (slashdot.org)‚̃|
  [ƒg80‚܂ł̊Ԃōs‚í‚ê‚Ä‚¢‚Ü‚·B myhost ‚©‚猩‚é‚ƁA 207.218.152.131
  (slashdot.org)‚̃|[ƒg80‚ɑ΂µ‚āA 192.168.1.100 (myhost)ƒ|[ƒg1050‚Ü
  ‚ł̊Ԃōs‚í‚ê‚Ä‚¢‚Ü‚·B‚ªA‚»‚ê‚ÍŽÀÛ‚É‚Í“§‰ß“I‚ȃvƒƒLƒV‚Æ‚â‚èŽæ‚肵
  ‚Ä‚¢‚邱‚Æ‚É‚È‚è‚Ü‚·B

  3.3.3.  ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN: ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO

  ‚±‚̃VƒiƒŠƒI‚ł́Aƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN‚©‚ç‚̃pƒPƒbƒg‚́A“Á•Ê‚Ȉµ‚¢‚ª‚È
  ‚¯‚ê‚΃Cƒ“ƒ^[ƒlƒbƒg‚ðs‚«—ˆ‚·‚邱‚Æ‚Í‚ ‚è‚Ü‚¹‚ñBƒ[ƒJƒ‹ƒlƒbƒgƒ[ƒN
  ‚Ì IP ƒAƒhƒŒƒX‚́A RFC1918 ‚ɂăvƒ‰ƒCƒx[ƒg‚ȃCƒ“ƒ^[ƒlƒbƒgŠÂ‹«‚Ì‚½‚ß
  ‚É—pˆÓ‚³‚ê‚Ä‚¢‚éƒAƒhƒŒƒX(‚·‚È‚í‚¿ 10.*.*.* A 172.16.*.*-172.31.*.* ‚Ü
  ‚½‚Í 192.168.*.*)‚ðŠ„‚è“–‚Ä‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  ƒvƒƒLƒV‚ðŽg‚¤‘ã‚í‚è‚ɁA "ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO" ‚ƌĂ΂ê‚é“Á•Ê‚ȃJ[ƒlƒ‹
  ‹@”\‚ðŽg‚¢‚Ü‚·Bƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚́Aƒtƒ@ƒCƒAƒEƒH[ƒ‹‚ðŒo—R‚µ‚½‚©‚Ì‚æ
  ‚¤‚ɃpƒPƒbƒg‚ð‘‚«Š·‚¦‚é‚̂ŁA‚±‚ê‚ç‚̃pƒPƒbƒg‚͏í‚Ƀtƒ@ƒCƒAƒEƒH[ƒ‹Ž©
  g‚©‚ç‚«‚½‚悤‚ÉŒ©‚¦‚Ü‚·B‚»‚ê‚©‚çA‰ž“š‚ð–{—ˆ‚Ì—v‹Œ³‚Ö‘—‚é‚悤‚ɏ‘‚«
  Š·‚¦‚Ü‚·B

  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚Í‚¢‚­‚‚©‚Ì "ƒgƒŠƒbƒL[‚È" ƒvƒƒgƒRƒ‹‚ðˆµ‚¤‚½‚ß‚ÌŒÂ
  •Ê‚̃‚ƒWƒ…[ƒ‹‚ðŽ‚Á‚Ä‚¢‚Ü‚·B—Ⴆ‚΁AFTP, RealAudio, Quake ‚È‚Ç‚Å‚·B
  –{“–‚ÉŽæ‚舵‚¢‚ª“‚¢ƒvƒƒgƒRƒ‹‚Ì‚½‚߂ɂ́A "Ž©“®ƒtƒHƒ[ƒfƒBƒ“ƒO" ‹@
  ”\‚ɂāAŠÖ˜A‚µ‚½ƒ|[ƒg‚Ì“]‘—‚ðŽ©“®“I‚ɐݒ肷‚邱‚Æ‚É‚æ‚èA‚»‚ê‚ç‚̈ꕔ
  ‚ðŽæ‚舵‚¤‚±‚Æ‚ª‚Å‚«‚Ü‚·BÚ×‚ɂ‚¢‚Ä‚Í ``ipportfw'' (2.0ŒnƒJ[ƒl
  ƒ‹)‚Ü‚½‚Í ``ipmasqadm'' (2.1ŒnƒJ[ƒlƒ‹)‚𒲂ׂĂ݂ĉº‚³‚¢B

  ‚ ‚È‚½‚ªƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃AƒNƒZƒX‚Å–]‚ÞƒT[ƒrƒX‚ɂ‚¢‚ẮA•K‚¸ƒtƒ@ƒC
  ƒAƒEƒH[ƒ‹ã‚̃vƒƒLƒV‚ŃTƒ|[ƒg‚³‚ꂽƒT[ƒrƒX‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñ(‚µ
  ‚©‚µAŒãq‚Ì ``§ŒÀ‚³‚ꂽ“à•”ƒT[ƒrƒX'' ‚ðŽQÆ‚µ‚ĉº‚³‚¢)B

  —á: ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃EƒFƒuEƒAƒNƒZƒX‚ð‹–
  ‚·

  1. ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚́A 192.168.1.* ã‚Ì•¡”‚̔Ԓn‚©‚ç‚È‚èA
     myhost ‚É‚Í 192.168.1.100 ‚ªŠ„‚è“–‚Ä‚ç‚êAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚̃C[ƒT
     ƒlƒbƒgƒCƒ“ƒ^[ƒtƒF[ƒX‚É‚Í 192.168.1.1 ‚ªŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢‚Ü‚·B

  2. ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚̏ã
     ‚̃zƒXƒg‚̃|[ƒg80‚Ö‚Ì‚·‚ׂẴpƒPƒbƒg‚ðƒ}ƒXƒJƒŒ[ƒh‚·‚é‚悤Ý’肳
     ‚ê‚Ä‚¢‚Ü‚·B

  3. Netscape ‚́A’¼ÚÚ‘±‚·‚é‚悤‚ɐݒ肳‚ê‚Ä‚¢‚Ü‚·B

  4. DNS ‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚̏ã‚Ő³‚µ‚­Ý’肳‚ê‚Ä‚¢‚È‚¯‚ê‚΂È
     ‚è‚Ü‚¹‚ñB

  5. ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚Ì‚½‚߂̃fƒtƒHƒ‹ƒgEƒ‹
     [ƒg(•Ê–¼AƒQ[ƒgƒEƒFƒC)‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  myhost ‚Ì Netscape ‚©‚çA http://slashdot.org ‚ð“ǂށB

  1. Netscape ‚́A "slashdot.org" ‚Æ‚¢‚¤–¼‘O‚𒲂ׂāA 207.218.152.131
     ‚Æ‚¢‚¤ IP ƒAƒhƒŒƒX‚𓾂܂·B‚»‚ê‚©‚烍[ƒJƒ‹‚ȃ|[ƒg1050‚ðŽg‚Á‚āA
     ‚»‚Ì IP ƒAƒhƒŒƒX‚̃EƒFƒuEƒT[ƒo(ƒ|[ƒg80)‚ɑ΂µ‚Đڑ±‚ðs‚¢AƒEƒF
     ƒuEƒy[ƒW‚ð—v‹‚µ‚Ü‚·B

  2. slashdot.org (ƒ|[ƒg80)‚Ö‚Ì myhost (ƒ|[ƒg1050)‚©‚ç‚̃pƒPƒbƒg‚̓tƒ@
     ƒCƒAƒEƒH[ƒ‹‚É“n‚³‚êA‚»‚±‚Ńtƒ@ƒCƒAƒEƒH[ƒ‹(ƒ|[ƒg65000)‚Ì PPP ƒC
     ƒ“ƒ^ƒtƒF[ƒX‚©‚ç—ˆ‚½‚©‚̂悤‚ɏ‘‚«’¼‚³‚ê‚Ü‚·B slashdot.org ‚©‚ç‚Ì
     ‰ž“šƒpƒPƒbƒg‚ð•Ô‚·‚±‚Æ‚ª‰Â”\‚Æ‚È‚é‚悤‚ɁAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Í—LŒø‚È
     ƒCƒ“ƒ^[ƒlƒbƒgƒAƒhƒŒƒX(1.2.3.4)‚ðŽ‚Á‚Ä‚¢‚Ü‚·B

  3. firewall.littlecorp.com (ƒ|[ƒg65000)‚ɑ΂µ‚Ä slashdot.org (ƒ|[
     ƒg80)‚©‚ç‚̃pƒPƒbƒg‚ª•Ô‚³‚êA‚»‚ê‚ç‚ð myhost (ƒ|[ƒg1050)‚Ö‘—‚邽‚ß
     ‚ɏ‘‚«’¼‚³‚ê‚Ü‚·Bƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ðŽÀŒ»‚·‚邽‚ß‚Ì "–‚–@" ‚̐³‘Ì
     ‚Æ‚¢‚¤‚̂́A‚‚܂èA‰ž“š‚ª—ˆ‚½‚Æ‚«‚ɁA‚»‚ê‚𐳂µ‚­–ß‚¹‚é‚悤‚ɁAo
     —̓pƒPƒbƒg‚ð‘‚«Š·‚¦‚é‚Æ‚«‚ÉŠo‚¦‚Ä‚¨‚­‚Æ‚¢‚¤‚±‚Æ‚Å‚·B

  4. Netscape‚́Aƒy[ƒW‚ð•\Ž¦‚µ‚Ü‚·B

  slashdot.org ‚Ì‘¤‚©‚猩‚é‚ƁAÚ‘±‚Í 1.2.3.4 (ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Ì PPP ƒC
  ƒ“ƒ^ƒtƒF[ƒX)ƒ|[ƒg65000‚©‚çA 207.218.152.131 (slashdot.org)ƒ|[
  ƒg80‚܂ōs‚í‚ê‚Ä‚¢‚Ü‚·B myhost ‚Ì‘¤‚©‚猩‚é‚ƁAÚ‘±‚Í 207.218.152.131
  (slashdot.org)ƒ|[ƒg80‚ɑ΂µ‚āA 192.168.1.100 (myhost)ƒ|[ƒg1050‚©‚ç
  s‚í‚ê‚Ä‚¢‚Ü‚·B

  3.3.4.  ƒpƒuƒŠƒbƒNƒlƒbƒgƒ[ƒN

  ‚±‚̃VƒiƒŠƒI‚ł́A‚ ‚È‚½‚̌l‚̃lƒbƒgƒ[ƒN‚̓Cƒ“ƒ^[ƒlƒbƒg‚̈ꕔ•ª‚Å
  ‚·: ƒpƒPƒbƒg‚͕ύX‚³‚ê‚邱‚Æ‚È‚­—¼•û‚̃lƒbƒgƒ[ƒN‚𗬂ê‚邱‚Æ‚ª‚Å‚«‚Ü
  ‚·B“à•”ƒlƒbƒgƒ[ƒN‚Ì IP ƒAƒhƒŒƒX‚́A IP ƒAƒhƒŒƒX‚̃uƒƒbƒN‚ð\¿‚·‚é
  ‚±‚Æ‚É‚æ‚Á‚ÄŠ„‚è“–‚Ä‚ç‚ꂽ‚à‚Ì‚Ì‚Í‚¸‚Å‚·‚̂ŁA‘¼‚̃lƒbƒgƒ[ƒN‚́A‚Ç‚¤
  ‚â‚Á‚Ä‚ ‚È‚½‚ÌŒ³‚ÖƒpƒPƒbƒg‚ð“Í‚¯‚ç‚ê‚é‚©‚ð’m‚Á‚Ä‚¢‚é‚Å‚µ‚傤B‚±‚ê‚ÍŒp
  ‘±“I‚ɐڑ±‚³‚ê‚邱‚Æ‚ðˆÓ–¡‚µ‚Ä‚¢‚Ü‚·B

  (–ó’: —Ⴆ‚΁A INTERNIC ‚â JPNIC ‚Ȃǂɑ΂·‚鐳‚µ‚¢Žè‘±‚«‚É‚æ‚Á‚Ä“¾‚ç
  ‚ꂽŒp‘±“I‚ÉŽg—p‚Å‚«‚é IP ƒAƒhƒŒƒX‚ð‚ ‚È‚½‚ªŠ—L‚µ‚Ä‚¢‚È‚¯‚ê‚΂Ȃç‚È‚¢
  ‚Æ‚¢‚¤‚±‚Æ‚Å‚·B)

  ‚±‚̏ê–ʂŃpƒPƒbƒgEƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚́A‚ǂ̂悤‚ȃpƒPƒbƒg‚ª‚ ‚È‚½‚̃lƒb
  ƒgƒ[ƒN‚Æ‚»‚êˆÈŠO‚̃Cƒ“ƒ^[ƒlƒbƒg‚Æ‚ÌŠÔ‚Å‚â‚èŽæ‚肳‚ê‚é‚©‚𐧌À‚·‚邽
  ‚ß‚È‚Ç‚ÉŽg‚í‚ê‚Ü‚·B—Ⴆ‚΁AƒCƒ“ƒ^[ƒlƒbƒg‚Ì‘¼‚̏ꏊ‚Ƃ̃pƒPƒbƒg‚Ì‚â‚è
  Žæ‚è‚ð‚ ‚È‚½‚̃EƒFƒuƒT[ƒo‚ɑ΂µ‚Ä‚Ì‚Ý‚ÉŒÀ’肳‚¹‚邱‚Æ‚ª‚Å‚«‚Ü‚·B

  ƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚©‚çƒCƒ“ƒ^[ƒlƒbƒg‚ւ̃EƒFƒuEƒAƒNƒZƒX‚ð‹–‚·

  1. ‚ ‚È‚½‚Ì“à•”ƒlƒbƒgƒ[ƒN‚́A‚ ‚È‚½‚ª“o˜^‚µ‚½ IP ƒAƒhƒŒƒXEƒuƒƒb
     ƒN(1.2.3.* ‚Æ‚µ‚Ü‚·)‚ɉž‚¶‚½ƒAƒhƒŒƒX‚ªŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢‚Ü‚·B

  2. ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚́A‘S‚Ẵgƒ‰ƒtƒBƒbƒN‚ð‹–‚·‚悤Ý’肳‚ê‚Ä‚¢‚Ü‚·B

     (–ó’: ‚±‚±‚ÅŽ¦‚³‚ꂽƒVƒiƒŠƒI‚Íà–¾‚Ì‚½‚ß‚Ì•Ö‹X“I‚ȃP[ƒX‚Å‚·BŽÀÛ
     ‚̃P[ƒX‚ł́AŽŸ‚̐ß("“à•”ƒT[ƒrƒX‚ÌŒÀ’è")‚ÅŽ¦‚³‚ꂽ‚悤‚ɁAƒT[ƒr
     ƒX‚ðŒÀ’è‚·‚é‚ȂǁA‚ ‚È‚½‚̃lƒbƒgƒ[ƒN‚ðŽç‚邽‚߂ɁAo“ü‚è‚·‚éƒp
     ƒPƒbƒg‚ɂ‚¢‚Ä“KØ‚È‹–‰Â^‹‘”Û‚Ì‚½‚ß‚ÌðŒ‚ðÝ’肵‚Ä‚¨‚©‚È‚¯‚ê‚΂È
     ‚è‚Ü‚¹‚ñB)

  3. Netscape‚́AƒCƒ“ƒ^[ƒlƒbƒg‚É’¼ÚÚ‘±‚·‚é‚悤‚ɐݒ肳‚ê‚Ä‚¢‚Ü‚·B

  4. DNS‚́A‚ ‚È‚½‚̃lƒbƒgƒ[ƒN‚̏ã‚Ő³‚µ‚­Ý’肳‚ê‚Ä‚¢‚È‚¯‚ê‚΂Ȃè‚Ü‚¹
     ‚ñB

  5. ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚́Aƒvƒ‰ƒCƒx[ƒgƒlƒbƒgƒ[ƒN‚Ì‚½‚߂̃fƒtƒHƒ‹ƒgEƒ‹
     [ƒg(ƒQ[ƒgƒEƒFƒC)‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  myhost ‚Ì Netscape ‚©‚çAhttp://slashdot.org ‚ðŒ©‚éB

  1. Netscape‚́A "slashdot.org" ‚Æ‚¢‚¤–¼‘O‚𒲂ׂāA 207.218.152.131 ‚Æ
     ‚¢‚¤ IP ƒAƒhƒŒƒX‚𓾂܂·B‚»‚ê‚©‚烍[ƒJƒ‹‚ȃ|[ƒg1050‚ðŽg‚Á‚āA‚»
     ‚Ì IP ƒAƒhƒŒƒX‚̃EƒFƒuEƒT[ƒo(ƒ|[ƒg80)‚ɑ΂µ‚Đڑ±‚ðs‚¢AƒEƒF
     ƒuEƒy[ƒW‚ð—v‹‚µ‚Ü‚·B

  2. ƒpƒPƒbƒg‚Í‚ ‚È‚½‚̃lƒbƒgƒ[ƒN‚Æ slashdot.org ‚ÌŠÔ‚Ì‘¼‚Ì‚¢‚­‚‚©‚Ì
     ƒ‹[ƒ^[‚ð’ʂ蔲‚¯‚é‚Ì‚Æ“¯‚¶‚悤‚ɁA‚ ‚È‚½‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚ð’Ê‚è
     ”²‚¯‚Ä‚â‚èŽæ‚肳‚ê‚Ü‚·B

  3. Netscape‚́Aƒy[ƒW‚ð•\Ž¦‚µ‚Ü‚·B

  ‚‚܂èA‚±‚̏ꍇ‚Í 207.218.152.131 (slashdot.org)ƒ|[ƒg80‚ƁA
  1.2.3.100 (myhost)ƒ|[ƒg1050‚ÌŠÔ‚Ì‚½‚¾‚ЂƂ‚¾‚¯‚̐ڑ±‚ª‘¶Ý‚µ‚Ü‚·B

  3.3.5.  §ŒÀ‚³‚ꂽ“à•”ƒT[ƒrƒX

  ŠO‚̃Cƒ“ƒ^[ƒlƒbƒg‚©‚ç‚ ‚È‚½‚Ì“à•”ƒT[ƒrƒX‚ɑ΂µ‚āAƒtƒ@ƒCƒAƒEƒH[ƒ‹ã
  ‚ŃT[ƒrƒX‚ðŽÀs‚·‚éˆÈŠO‚Ì•û–@‚ð‚Ƃ邱‚Æ‚Ì‚Å‚«‚éƒgƒŠƒbƒN‚ª­‚µ‚΂©‚è‚ 
  ‚è‚Ü‚·B‚»‚ê‚ç‚Ì•û–@‚ł̓vƒƒLƒV‚âƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ðŠO•”‚̃RƒlƒNƒVƒ‡
  ƒ“‚Ì‚½‚ß‚ÉŽg—p‚·‚é‚Æ‚¢‚¤ƒAƒvƒ[ƒ`‚ð‚Æ‚è‚Ü‚·B

  Å‚à’Pƒ‚ȃAƒvƒ[ƒ`‚Í "ƒŠƒ_ƒCƒŒƒNƒ^[" (‚»‚ê‚Í—^‚¦‚ç‚ꂽƒ|[ƒg‚̏ã‚Å
  Ú‘±‚ð‘҂‚Ƃ¢‚¤"•nŽã‚È"ƒvƒƒLƒV‚Å‚·)‚𓮍삳‚¹‚邱‚Æ‚Å‚·B‚»‚ê‚ç‚Í‚ 
  ‚ç‚©‚¶‚ߌˆ‚ß‚ç‚ꂽ“à•”ƒzƒXƒg‚ƃ|[ƒg‚ɑ΂µ‚Đڑ±‚ðs‚¢Aƒf[ƒ^‚ð“ñ‚‚Ì
  Ú‘±‚̊ԂŃRƒs[‚µ‚Ü‚·B "redir" ƒvƒƒOƒ‰ƒ€‚ðŽg‚Á‚½—á‚ðŽ¦‚·‚ƁAŠO‚̃C
  ƒ“ƒ^[ƒlƒbƒg‘¤‚©‚猩‚é‚ƁAÚ‘±‚Í‚ ‚È‚½‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚ɑ΂µ‚čs‚í‚ê
  ‚Ü‚·B’†‚̃T[ƒo‚Ì‘¤‚©‚猩‚é‚ƁAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Æ‚»‚̃T[ƒo‚ɑ΂µ‚ĐÚ
  ‘±‚ªs‚í‚ê‚é‚悤‚É‚È‚è‚Ü‚·B

  ‚à‚¤ˆê‚‚̃Aƒvƒ[ƒ`(‚±‚ê‚É‚Í ipportfw ‚Ì‚½‚߂Ƀpƒbƒ`‚ð“–‚Ä‚ç‚ꂽ 2.0
  ŒnƒJ[ƒlƒ‹‚©A‚ ‚é‚¢‚Í 2.1 ŒnˆÈ~‚̃J[ƒlƒ‹‚ª•K—v‚Å‚·)‚̓J[ƒlƒ‹‚ł̃|
  [ƒgEƒtƒHƒ[ƒfƒBƒ“ƒO‚ðŽg‚¤‚±‚Æ‚Å‚·B‚±‚ê‚́A "redir" ‚Æ“¯‚¶“®ì‚ð•Ê
  ‚È•û–@‚ōs‚¢‚Ü‚·B‚‚܂èAƒJ[ƒlƒ‹‚Í“n‚³‚ꂽƒpƒPƒbƒg‚ɑ΂µ‚āA‚»‚Ì–Ú“I
  ƒAƒhƒŒƒX‚ƃ|[ƒg‚ð“à•”‚̃zƒXƒg‚ƃ|[ƒg‚ɑ΂µ‚ÄŒü‚¯‚ç‚ꂽ‚悤‚ɏ‘‚«Š·‚¦
  ‚Ü‚·BŠO‚̃Cƒ“ƒ^[ƒlƒbƒg‘¤‚©‚猩‚é‚ƁA‚ ‚È‚½‚̃tƒ@ƒCƒAƒEƒH[ƒ‹‚ɑ΂µ‚Ä
  Ú‘±‚³‚ꂽ‚悤‚ÉŒ©‚¦‚Ü‚·B‚Ü‚½A‚ ‚È‚½‚Ì“à•”‚̃T[ƒo‘¤‚©‚猩‚é‚ƁAƒCƒ“
  ƒ^[ƒlƒbƒgEƒzƒXƒg‚©‚çƒT[ƒo‚Ü‚Å’¼ÚÚ‘±‚³‚ê‚Ä‚¢‚é‚悤‚ÉŒ©‚¦‚Ü‚·B

  3.4.  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ɑ΂·‚é‚»‚Ì‘¼‚̏î•ñ

  David Ranch ‚̓}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ÉŠÖ‚·‚é—D‚ꂽV‚µ‚¢ HOWTO ‚ð‘‚«‚Ü‚µ
  ‚½B‚±‚Ì HOWTO ‚Æ‚Í‘½‚­‚̏d•¡•”•ª‚ðŽ‚¿‚Ü‚·‚ªAŽŸ‚̃y[ƒW‚©‚猩‚‚¯‚é
  ‚±‚Æ‚ª‚Å‚«‚Ü‚·B

  http://www.linuxdoc.org/HOWTO/IP-Masquerade-HOWTO.html
  <http://www.linuxdoc.org/HOWTO/IP-Masquerade-HOWTO.html>

  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ÌŒöŽ®ƒy[ƒW‚ÍŽŸ‚Ì‚Æ‚¨‚è‚Å‚·B

  http://ipmasq.cjb.net <http://ipmasq.cjb.net>

  4.  IP ƒtƒ@ƒCƒAƒEƒH[ƒŠƒ“ƒOƒ`ƒFƒCƒ“

  ‚±‚̏͂́A‚ ‚È‚½‚Ì•K—v‚ÉŠ‚¤ƒpƒPƒbƒgƒtƒBƒ‹ƒ^‚ð\’z‚·‚邽‚߂ɁAŽÀÛ‚É
  ’m‚Á‚Ä‚¨‚©‚È‚¯‚ê‚΂Ȃç‚È‚¢‚±‚Æ‚ð‘S‚Äà–¾‚µ‚Ü‚·B

  4.1.  ‚ǂ̂悤‚ɃpƒPƒbƒg‚ªƒtƒBƒ‹ƒ^‚ð’ʉ߂·‚é‚Ì‚©

  ƒJ[ƒlƒ‹‚Í‹N“®Žž‚É 3‚‚̃‹[ƒ‹ƒŠƒXƒg‚ð•ÛŽ‚µ‚Ä‚¢‚Ü‚·B‚±‚ê‚ç‚̃ŠƒXƒg‚Í
  ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ`ƒFƒCƒ“A‚Ü‚½‚Í’P‚Ƀ`ƒFƒCƒ“‚ƌĂ΂ê‚Ü‚·B 3‚‚̃`ƒFƒC
  ƒ“‚́A input, output ‚»‚µ‚Ä forward ‚ƌĂ΂ê‚Ü‚·BƒpƒPƒbƒg‚ª (—Ⴆ‚΁A
  ƒC[ƒTƒlƒbƒgƒJ[ƒh‚ð’Ê‚¶‚Ä) “ü‚Á‚Ä—ˆ‚é‚ƁAƒJ[ƒlƒ‹‚Í‚»‚̃pƒPƒbƒg‚́u‰^
  –½v‚ðŒˆ’è‚·‚邽‚ß‚É input ƒ`ƒFƒCƒ“‚ðŽg‚¢‚Ü‚·BƒpƒPƒbƒg‚ª‚±‚̃Xƒeƒbƒv
  ‚Ő¶‚«Žc‚é‚ƁAƒJ[ƒlƒ‹‚̓pƒPƒbƒg‚ðŽŸ‚É‚Ç‚±‚É‘—‚é‚©‚ðŒˆ’è‚µ‚Ü‚·B(‚±‚ê
  ‚ðƒ‹[ƒeƒBƒ“ƒO‚ƌĂт܂·B) ƒpƒPƒbƒg‚ª‘¼‚̃}ƒVƒ“‚֍s‚­‚Æ’è‚ß‚ç‚ê‚Ä‚¢‚é
  ‚È‚ç‚΁A forward ƒ`ƒFƒCƒ“‚𒲂ׂ܂·BÅŒã‚ɁAƒpƒPƒbƒg‚ªo—Í‚³‚ê‚é‘O
  ‚ɁAƒJ[ƒlƒ‹‚Í output ƒ`ƒFƒCƒ“‚𒲂ׂ܂·B

  1‚‚̃`ƒFƒCƒ“‚Í•¡”‚̃‹[ƒ‹‚̃`ƒFƒbƒNƒŠƒXƒg‚©‚ç\¬‚³‚ê‚Ä‚¢‚Ü‚·BŠeX
  ‚̃‹[ƒ‹‚́u‚à‚µAƒpƒPƒbƒg‚̃wƒbƒ_[‚ª‚±‚ñ‚È‚¾‚Á‚½‚çAƒpƒPƒbƒg‚ð‚±‚Ì‚æ
  ‚¤‚É‚µ‚È‚³‚¢v‚ÆŽwŽ¦‚µ‚Ü‚·B‚à‚µA‚ ‚郋[ƒ‹‚ªƒpƒPƒbƒg‚ƃ}ƒbƒ`‚µ‚È‚¯‚ê
  ‚΁Aƒ`ƒFƒCƒ““à‚ÌŽŸ‚̃‹[ƒ‹‚ª’²‚ׂç‚ê‚Ü‚·BÅI“I‚ɁA’²‚ׂ郋[ƒ‹‚ª–³‚­
  ‚È‚Á‚½‚çAƒJ[ƒlƒ‹‚Í‚»‚̃`ƒFƒCƒ“‚̃|ƒŠƒV[(•ûj)‚ðŒ©‚Ä‰½‚ð‚·‚é‚©Œˆ‚ß‚Ü
  ‚·BƒZƒLƒ…ƒŠƒeƒBˆÓŽ¯‚Ì‹­‚¢ƒVƒXƒeƒ€‚ł́A‚±‚̃|ƒŠƒV[‚Í•’ʁAƒpƒPƒbƒg‚ð
  DROP ‚·‚é‚悤‚ɃJ[ƒlƒ‹‚ÉŽwŽ¦‚µ‚Ü‚·B

  ASCII ƒA[ƒgƒtƒ@ƒ“‚Ì‚½‚߂ɁAƒ}ƒVƒ“‚É“ü—ˆ‚·‚éƒpƒPƒbƒg‚ÌŠ®‘S‚Ȓʂ蓹‚ð‚±
  ‚±‚É‹L‚µ‚Ü‚·B

  (–ó’: ‚±‚Ì•¶‘‚Å‚Í“ú–{Œê•¶ŽšƒR[ƒh‚ð—p‚¢‚½ "JIS ƒA[ƒg" ‚ðì¬‚µ‚Ä‚¨
  ‚è‚Ü‚·B
  ‚¢‚í‚ä‚é‘SŠp•¶Žš‚Æ”¼Šp•¶Žš‚ª¬Ý‚·‚é "JIS ƒA[ƒg" ‚ðA Netscape
  Navigator/Communicator ‚â Microsoft Internet Explorer ‚Å•\Ž¦‚³‚¹‚é‚ƁA
  ”¼Šp•¶Žš‚Ì•‚Æ‘SŠp•¶Žš‚Ì•‚̔䂪ˆê’v‚µ‚È‚¢ˆ×‚ɁAwƒKƒ^ƒKƒ^‚É•ö‚ꂽ}
  –ʁx‚É‚È‚Á‚Ä‚µ‚Ü‚¢‚Ü‚·B
  html ”Å ‚ðŒ©‚éÛ‚ɂ́A lynx ‚â w3m “™‚̃eƒLƒXƒgƒuƒ‰ƒEƒU‚ð‚¨‘E‚ß‚µ‚Ü
  ‚·B)

      „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¢
      „                                                  lo ƒCƒ“ƒ^[ƒtƒF[ƒX„ 
      „             ACCEPT/                                                 „ 
      «           REDIRECT   „¬„ª„ª„ª„ª„ª„­  „¡„Ÿ„Ÿ„Ÿ„Ÿ„¢            ACCEPT„ 
  ¨ƒ`¨³¨„¡„Ÿ„Ÿ„Ÿ„Ÿ„¢¨ƒ}¨„«ƒ‹[ƒeƒBƒ“„«¨„ forward „ „Ÿ„Ÿ¨„¡„Ÿ„Ÿ„Ÿ„Ÿ„¢¨
    ƒF  “–  „  input  „   ƒX  „«ƒO‚ÌŒˆ’è  „«  „ ƒ`ƒFƒCƒ“„ „¡„Ÿ¨„  output „ 
    ƒb  «  „ ƒ`ƒFƒCƒ“„   ƒJ  „¯„ª„ª„ª„ª„ª„®  „¤„Ÿ„Ÿ„Ÿ„Ÿ„£„ „¡¨„ ƒ`ƒFƒCƒ“„ 
    ƒN  „   „¤„Ÿ„Ÿ„Ÿ„Ÿ„£  ƒŒ        „             „       „ „   „¤„Ÿ„Ÿ„Ÿ„Ÿ„£
    ƒT  „       „         [        «            „       „ „       „ 
    ƒ€  „       „         ƒh  ƒ[ƒJƒ‹ƒvƒƒZƒX    «      „ „       «
    „   «      «        ŠO        „            DENY/    „ „      DENY/
    „  DENY    DENY/      ‚µ        „           REJECT    „ „     REJECT
    «        REJECT      „         „                     „ „ 
   DENY                   „         „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„£„ 
                          „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„£

  ˆÈ‰º‚ÉŠeX‚Ì’iŠK‚Å‚Ìà–¾‚𒀈ê‹L‚µ‚Ü‚·B

     ƒ`ƒFƒbƒNƒTƒ€:
        ƒpƒPƒbƒg‚ªŠô‚‚©‚Ì•û–@‚ɂĉ󂳂ê‚Ä‚¢‚È‚¢‚©‚ðƒeƒXƒg‚µ‚Ü‚·BƒpƒPƒb
        ƒg‚ª‰ó‚ê‚Ä‚¢‚ê‚΁A”ے肳‚ê‚Ü‚·B

     ³“–«:
        ŠeX‚̃tƒ@ƒCƒAƒEƒH[ƒ‹ƒ`ƒFƒCƒ“‚Ì‘O‚É‚»‚ê‚ç‚̃pƒPƒbƒg‚̐³“–«‚Ì
        ƒ`ƒFƒbƒN‚ªˆê‚‚ ‚è‚Ü‚·B‚µ‚©‚µA input ƒ`ƒFƒCƒ“‚Ì‚»‚ꂪÅ‚àd—v
        ‚Å‚·BŠô‚‚©‚ُ̈í‚ȃpƒPƒbƒg‚Í‹K‘¥ƒ`ƒFƒbƒNƒR[ƒh‚ð¬—‚³‚¹‚é‹°‚ê
        ‚ª‚ ‚è‚Ü‚·B‚»‚ê‚ç‚Í‚±‚±‚Ŕے肳‚ê‚Ü‚·B (‚±‚ꂪ”­¶‚·‚é‚Æ
        syslog ‚ɃƒbƒZ[ƒW‚ª‹L˜^‚³‚ê‚Ü‚·B)
     input ƒ`ƒFƒCƒ“:
        ƒpƒPƒbƒg‚ªƒeƒXƒg‚³‚ê‚éÅ‰‚̃tƒ@ƒCƒAƒEƒH[ƒ‹ƒ`ƒFƒCƒ“‚Å‚·Bƒ`ƒFƒC
        ƒ“‚Ì”»’f‚ª DENY (”Û’è) ‚Ü‚½‚Í REJECT (‹‘â) ‚Å‚È‚¯‚ê‚΁AƒpƒPƒbƒg
        ‚Ì“®‚«‚Í‘±‚«‚Ü‚·B

     ƒfƒ}ƒXƒJƒŒ[ƒh(ƒ}ƒXƒJƒŒ[ƒhŠO‚µ):
        ƒpƒPƒbƒg‚ªˆÈ‘O‚Ƀ}ƒXƒJƒŒ[ƒh‚³‚ꂽƒpƒPƒbƒg‚ɑ΂·‚鉞“š‚È‚çAƒ}ƒX
        ƒJƒŒ[ƒh‚ªŠO‚³‚êA output ƒ`ƒFƒCƒ“‚܂ňê‹C‚ɏˆ—‚ð”ò‚΂µ‚Ü‚·B
        IP ƒ}ƒXƒJƒŒ[ƒh‚ðŽg‚Á‚Ä‚¢‚È‚¯‚ê‚΁AˆÓ}“I‚ɏã‹L‚̐}‚©‚çÁ‹Ž‚Å‚«
        ‚Ü‚·B

     ƒ‹[ƒeƒBƒ“ƒO‚ÌŒˆ’è:
        (ƒpƒPƒbƒg’†‚Ì)ˆ¶æƒtƒB[ƒ‹ƒh‚̓‹[ƒeƒBƒ“ƒOƒR[ƒh‚É‚æ‚Á‚āA‚±‚̃p
        ƒPƒbƒg‚ªƒ[ƒJƒ‹ƒvƒƒZƒX‚ɍs‚­‚ׂ«‚È‚Ì‚© (ƒ[ƒJƒ‹ƒvƒƒZƒX‚̏͂ð
        ŽQÆ‚µ‚ĉº‚³‚¢) AƒŠƒ‚[ƒgƒ}ƒVƒ“‚É“]‘—‚³‚ê‚é‚Ì‚© (ƒtƒHƒ[ƒhƒ`ƒF
        ƒCƒ“‚̏͂ðŽQÆ‚µ‚ĉº‚³‚¢) ‚ðŒˆ’è‚·‚邽‚ß‚É’²‚ׂç‚ê‚Ü‚·B

     ƒ[ƒJƒ‹ƒvƒƒZƒX:
        ƒ}ƒVƒ“ã‚ʼnғ­‚·‚éƒvƒƒZƒX‚̓‹[ƒeƒBƒ“ƒO‚ÌŒˆ’è‚Ì’iŠK‚ÌŒã‚̃pƒPƒb
        ƒg‚ðŽó‚¯Žæ‚ê‚é‚Æ‹¤‚ɁAƒpƒPƒbƒg‚𑗐M‚Å‚«‚Ü‚·B (‘—MƒpƒPƒbƒg‚̓‹
        [ƒeƒBƒ“ƒOŒˆ’èƒXƒeƒbƒv‚ðŒo‚āA output ƒ`ƒFƒCƒ“‚ð’ʉ߂µ‚Ü‚·B)

     lo ƒCƒ“ƒ^[ƒtƒF[ƒX:
        ƒ[ƒJƒ‹ƒvƒƒZƒX‚©‚ç‚̃pƒPƒbƒg‚ªƒ[ƒJƒ‹ƒvƒƒZƒX‚ɍs‚­‚à‚Ì‚È‚ç
        ‚΁A‚»‚ê‚ç‚Í `lo' ‚Ɛݒ肳‚ꂽƒCƒ“ƒ^[ƒtƒF[ƒX‚Å output ƒ`ƒFƒCƒ“
        ‚ð’ʂ蔲‚¯AÄ‚Ñ `lo' ƒCƒ“ƒ^[ƒtƒF[ƒX‚Å input ƒ`ƒFƒCƒ“‚É“ü‚è‚Ü
        ‚·B lo ƒCƒ“ƒ^[ƒtƒF[ƒX‚͒ʏ탋[ƒvƒoƒbƒNƒCƒ“ƒ^[ƒtƒF[ƒX‚ƌĂÎ
        ‚ê‚Ü‚·B

     ƒ[ƒJƒ‹:
        ƒpƒPƒbƒg‚ªƒ[ƒJƒ‹ƒvƒƒZƒX‚Ő¶¬‚³‚ꂽ‚à‚Ì‚Å‚È‚¢‚È‚çA forward
        ƒ`ƒFƒCƒ“‚ªƒ`ƒFƒbƒN‚³‚êA‚³‚à‚È‚­‚΁AƒpƒPƒbƒg‚Í output ƒ`ƒFƒCƒ“‚Ö
        s‚«‚Ü‚·B

     forward ƒ`ƒFƒCƒ“:
        ‚±‚̃`ƒFƒCƒ“‚É‚Í‚±‚̃}ƒVƒ“‚©‚瑼‚Ö“]‘—‚³‚ê‚é‘S‚ẴpƒPƒbƒg‚ª’ʉß
        ‚µ‚Ü‚·B

     output ƒ`ƒFƒCƒ“:
        ‚±‚̃`ƒFƒCƒ“‚ɂ͏o—Í‚³‚ê‚é’¼‘O‚Ì‘S‚ẴpƒPƒbƒg‚ª’ʉ߂µ‚Ü‚·B

  4.1.1.  ipchains ‚ðŽg‚¤

  æ‚¸A‚±‚Ì•¶‘‚ɂĈµ‚¤‚¨ŽèŽ‚¿‚Ì ipchains ‚̃o[ƒWƒ‡ƒ“‚ðAˆÈ‰º‚̂悤‚É
  ŽQÆ‚µ‚Ü‚µ‚傤:

       $ ipchains --version
       ipchains 1.3.9, 17-Mar-1999

  ’‹L‚Æ‚µ‚āA1.3.4 (`--sport' ‚̂悤‚È’·‚¢ƒIƒvƒVƒ‡ƒ“‚ª‚ ‚è‚Ü‚¹‚ñ) ‚©A
  1.3.8 ˆÈ~‚ð‚¨‘E‚ß‚µ‚Ü‚·; ‚±‚ê‚ç‚Í‘å•ÏˆÀ’肵‚Ä‚¢‚Ü‚·B

  ŒÂX‚ÌŽ–€‚ɂ‚¢‚Ä‚Ì‚à‚Á‚Əڂµ‚¢à–¾‚ª•K—v‚È‚çAipchains ‚É‚Í‚©‚È‚èÚ
  ‚µ‚¢ƒ}ƒjƒ…ƒAƒ‹ƒy[ƒW (man ipchains) ‚ª‚ ‚è‚Ü‚·B“Á‚ɏڂµ‚­“à—e‚ð’m‚肽
  ‚¢‚È‚çAƒvƒƒOƒ‰ƒ~ƒ“ƒOƒCƒ“ƒ^[ƒtƒF[ƒX(man 4 ipfw) ‚©Aˆ½‚Í 2.1.x ‚̃J
  [ƒlƒ‹ƒ\[ƒX“à‚Ì net/ipv4/ip_fw.c ƒtƒ@ƒCƒ‹‚𒲂ׂé‚Æ—Ç‚¢‚Å‚µ‚傤B‚±‚ê
  ‚ç‚Í (–¾‚ç‚©‚É) M—Š‚Å‚«‚Ü‚·B

  ƒ\[ƒXƒpƒbƒP[ƒW‚É‚Í Scott Bronson ‚É‚æ‚é‘f°‚炵‚¢ƒNƒBƒbƒNƒŠƒtƒ@ƒŒƒ“
  ƒXƒJ[ƒh‚à‚ ‚è‚Ü‚·B A4”»‚Ü‚½‚Í US ƒŒƒ^[ƒTƒCƒY‚Ì PostScript(TM) ‚Ì—¼
  •û‚ª‚ ‚è‚Ü‚·B

  ipchains ‚ðŽg‚Á‚ĐFX‚È‚±‚Æ‚ª‚Å‚«‚Ü‚·Bæ‚¸A‘S‘̂̃`ƒFƒCƒ“‚ðŠÇ—‚·‚é
  ‘€ìB‚ ‚È‚½‚Í 3‚‚̑g‚ݍž‚ݍς݃`ƒFƒCƒ“‚Å‚ ‚éA input, output,
  forward (‚±‚ê‚ç‚͍폜‚Å‚«‚Ü‚¹‚ñ)‚©‚çŽn‚ß‚Ü‚·B

  1. V‚µ‚¢ƒ`ƒFƒCƒ“‚ðì‚é (-N)

  2. ‹ó‚̃`ƒFƒCƒ“‚ðíœ‚·‚é (-X)

  3. ‘g‚ݍž‚ݍς݃`ƒFƒCƒ“‚̃|ƒŠƒV[‚ð•ÏX‚·‚é (-P)

  4. ƒ`ƒFƒCƒ““à‚̃‹[ƒ‹‚ðƒŠƒXƒgƒAƒbƒv‚·‚é (-L)

  5. ƒ`ƒFƒCƒ“‚©‚烋[ƒ‹‚ð‘S‚ďÁ‚µ‹Ž‚é (-F)

  6. ƒ`ƒFƒCƒ““à‚Ì‘S‚Ẵ‹[ƒ‹‚̃pƒPƒbƒg‚ƃoƒCƒg‚̃JƒEƒ“ƒ^[‚ðƒ[ƒ‚É‚·‚é
     (-Z)

  ƒ`ƒFƒCƒ““à‚̃‹[ƒ‹‚𑀍삷‚é‚É‚Í—lX‚È•û–@‚ª‚ ‚è‚Ü‚·:

  1. ƒ`ƒFƒCƒ“‚ɐV‚µ‚¢ƒ‹[ƒ‹‚ð’ljÁ‚·‚é (-A)

  2. ƒ`ƒFƒCƒ““à‚Ì‚ ‚éˆÊ’u‚ɐV‚µ‚¢ƒ‹[ƒ‹‚ð‘}“ü‚·‚é (-I)

  3. ƒ`ƒFƒCƒ““à‚Ì‚ ‚éˆÊ’u‚̃‹[ƒ‹‚ð’u‚«Š·‚¦‚é (-R)

  4. ƒ`ƒFƒCƒ““à‚Ì‚ ‚éˆÊ’u‚̃‹[ƒ‹‚ðíœ‚·‚é (-D)

  5. ƒ`ƒFƒCƒ““à‚Ì“K‡‚µ‚½Å‰‚̃‹[ƒ‹‚ðíœ‚·‚é (-D)

  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ÉŠÖ‚·‚é‘€ì‚ª­‚È‚¢‚È‚ª‚ç‚ ‚è‚Ü‚·B‚»‚ê‚ç‚ð”z’u‚·‚é
  ‚É‘Š‰ž‚µ‚¢êŠ‚Ì—v–]‚Ìˆ×‚É ipchains ‚ÉŠÜ‚Ü‚ê‚Ä‚¢‚Ü‚·B

  1. Œ»Ý‚̃}ƒXƒJƒŒ[ƒh‚³‚ꂽÚ‘±‚̈ꗗ‚ð•\Ž¦‚·‚é (-M -L)

  2. ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’è‚·‚é (-M -S) (‚Å‚à ``ƒ}ƒXƒJ
     ƒŒ[ƒfƒBƒ“ƒO‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’è‚Å‚«‚Ü‚¹‚ñ!'' ‚ðŒ©‚Ä‰º‚³‚¢B)

  ÅŒã‚Ì (‚»‚µ‚Ä‹°‚ç‚­Å‚à•Ö—˜‚È) ‹@”\‚́AŽw’肵‚½ƒpƒPƒbƒg‚ªŽw’肵‚½ƒ`ƒF
  ƒCƒ“‚ð’ʉ߂·‚é‚È‚çA‚»‚̃pƒPƒbƒg‚ª‚Ç‚¤‚È‚é‚Ì‚©‚ðŽŽ‚µ‚Ƀ`ƒFƒbƒN‚Å‚«‚邱
  ‚Æ‚Å‚·B

  4.1.2.  ‚ ‚È‚½‚̃Rƒ“ƒsƒ…[ƒ^‚ª‹N“®‚·‚鎞‚ÉŒ©‚é‚à‚Ì

  ipchains ƒRƒ}ƒ“ƒh‚ª‹N“®‚³‚ê‚é‘O (’ˆÓ: Šô‚‚©‚̃fƒBƒXƒgƒŠƒrƒ…[ƒVƒ‡ƒ“
  ‚ł͏‰Šú‰»ƒXƒNƒŠƒvƒg“à‚Å ipchains ‚ð‹N“®‚µ‚Ä‚¢‚Ü‚·) ‚́A‘g‚ݍž‚ݍς݂Ì
  ƒ‹[ƒ‹ (`input', `forward' ‚Æ `output') ˆÈŠO‚ɂ͉½‚à‚ ‚è‚Ü‚¹‚ñB‚»‚µ‚Ä
  ŠeX‚̃`ƒFƒCƒ“‚Í ACCEPT (‹–‰Â) ‚̃|ƒŠƒV[‚ɐݒ肳‚ê‚Ä‚¢‚Ü‚·B‚±‚ê‚Í‘S
  ‚Ä‚ðŽó‚¯“ü‚ê‚邱‚Æ‚Æ“™‰¿‚Å‚·B

  4.1.3.  ’Pˆê‚̃‹[ƒ‹‚Å‚Ì‘€ì

  ƒ‹[ƒ‹‚𑀍삷‚邱‚Æ \ ‚»‚ê‚Í ipchains ‚ÌŠî–{‚Å‚·B‚Ù‚Æ‚ñ‚ǂ̏ꍇA•
  ’ʁA‚ ‚È‚½‚͒ljÁ (-A) ‚ƍ폜 (-D) ƒRƒ}ƒ“ƒh‚ðŽg‚¤‚±‚Æ‚É‚È‚é‚Å‚µ‚傤BŽc
  ‚è‚̃Rƒ}ƒ“ƒh(‘}“ü‚Ì -I ‚Æ’uŠ·‚Ì -R )‚́A‚±‚ê‚ç‚ÌŠT”O‚ð’Pƒ‚É(‹@”\)Šg’£
  ‚µ‚½‚à‚Ì‚Å‚·B

  ŠeX‚̃‹[ƒ‹‚ɂ́AƒpƒPƒbƒg‚ª–ž‚½‚·‚ׂ«ðŒ‚̃Zƒbƒg‚ƁAðŒ‚ª–ž‚½‚³‚ꂽ
  ‚Æ‚«‚É‚·‚邱‚Æ(eƒ^[ƒQƒbƒgf)‚ðŽw’肵‚Ü‚·B—Ⴆ‚΁AIP ƒAƒhƒŒƒX
  127.0.0.1 ‚©‚ç‚â‚Á‚Ä—ˆ‚é‘S‚Ä‚Ì ICMP ƒpƒPƒbƒg‚ð”jŠü‚µ‚½‚¢‚Æ‚µ‚Ü‚·B‚»‚Ì
  ê‡‚ÌðŒ‚ÍƒvƒƒgƒRƒ‹‚ª ICMP ‚ŁAƒ\[ƒXƒAƒhƒŒƒX‚ª 127.0.0.1 ‚ŁAƒ^[
  ƒQƒbƒg‚Í `DENY'(”Û’è) ‚Å‚·B

  127.0.0.1 ‚Í `ƒ‹[ƒvƒoƒbƒN' ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ŁA‚»‚ê‚Í‚ ‚È‚½‚̃}ƒVƒ“‚ª
  ŽÀÛ‚̃lƒbƒgƒ[ƒN‚ÉŒq‚ª‚Á‚Ä‚¢‚È‚­‚Ä‚à‘¶Ý‚µ‚Ü‚·B `ping' ƒvƒƒOƒ‰ƒ€‚Å
  ‚»‚̂悤‚ȃpƒPƒbƒg (ping ‚Í ’Pƒ‚É ICMP ƒ^ƒCƒv8 (ƒGƒR[—v‹)‚ð‘—‚èA‘S
  ‚Ä‚Ì‹¦—Í“I‚ȃzƒXƒg‚͐eØ‚É‚à ICMP ƒ^ƒCƒv 0 (ƒGƒR[‰ž“š)‚̃pƒPƒbƒg‚Å‚»
  ‚ê‚ɉž‚¦‚Ü‚·)‚𔭐¶‚³‚¹‚é‚Ì‚ÉŽg‚¢‚Ü‚·B‚±‚ê‚̓eƒXƒg‚ɖ𗧂¿‚Ü‚·B

       # ping -c 1 127.0.0.1
       PING 127.0.0.1 (127.0.0.1): 56 data bytes
       64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.2 ms

       --- 127.0.0.1 ping statistics ---
       1 packets transmitted, 1 packets received, 0% packet loss
       round-trip min/avg/max = 0.2/0.2/0.2 ms
       # ipchains -A input -s 127.0.0.1 -p icmp -j DENY
       # ping -c 1 127.0.0.1
       PING 127.0.0.1 (127.0.0.1): 56 data bytes

       --- 127.0.0.1 ping statistics ---
       1 packets transmitted, 0 packets received, 100% packet loss
       #

  ‚²——‚Ì‚Æ‚¨‚èÅ‰‚Ì ping ‚ª¬Œ÷‚µ‚Ä‚¢‚Ü‚·(`-c 1' ‚Í ping ‚ɃpƒPƒbƒg‚ð
  1ŒÂ‚¾‚¯‘—‚é‚悤‚ÉŽwŽ¦‚µ‚Ä‚¢‚Ü‚·)B

  ŽŸ‚Ƀ‹[ƒ‹‚ð `INPUT' ƒ`ƒFƒCƒ“‚ɒljÁ (-A) ‚µ‚Ü‚·Bƒ‹[ƒ‹‚ÌŽw’è‚́A
  127.0.0.1 ‚©‚ç (`-s 127.0.0.1') ‚ŃvƒƒgƒRƒ‹ ICMP (`-p icmp') ‚̃pƒPƒb
  ƒg‚́ADENY ‚ÖƒWƒƒƒ“ƒv‚·‚é (`-j DENY') ‚Å‚·B

  ‚»‚ê‚©‚ç 2”Ô–Ú‚Ì ping ‚Ń‹[ƒ‹‚ðƒeƒXƒg‚µ‚Ü‚·B‹A‚Á‚Ä—ˆ‚È‚¢‰ž“š‚ð‘҂‚Ì
  ‚ð ping ‚ªŽ~‚ß‚é‚܂ŏ­‚µ‚ÌŠÔ‚ª‚ ‚é‚Å‚µ‚傤B

  ƒ‹[ƒ‹‚ðíœ‚·‚é‚É‚Í 2’Ê‚è‚Ì•û–@‚ª‚ ‚è‚Ü‚·B 1”Ԗڂ́A—Ⴆ‚΁A input
  ƒ`ƒFƒCƒ“‚ɂ̓‹[ƒ‹‚ª 1ŒÂ‚¾‚¯‚µ‚©‚È‚¢‚̂𕪂Á‚Ä‚¢‚éê‡‚ł́A”ԍ†‚ðŽg‚Á
  ‚Ĉȉº‚̂悤‚ɍ폜‚Å‚«‚Ü‚·:

               # ipchains -D input 1
               #

  INPUT ƒ`ƒFƒCƒ“‚̃‹[ƒ‹”ԍ† 1 ‚ðíœB
  2”Ô–Ú‚Ì•û–@‚Í -A ƒRƒ}ƒ“ƒh‚ð‚»‚Á‚­‚èŽÊ‚µ‚Ä -A ‚ð -D ‚É’u‚«Š·‚¦‚½‚à‚Ì‚Å
  ‚·B‚±‚ê‚̓‹[ƒ‹‚ª•¡ŽG‚ȃ`ƒFƒCƒ“‚̏ꍇ‚ŁA—Ⴆ‚΁AŽæ‚菜‚«‚½‚¢‚Ì‚ªƒ‹[
  ƒ‹ 37 ‚¾‚Æ’T‚µ“–‚Ă邽‚߂Ƀ‹[ƒ‹‚𐔂¦‚½‚­‚È‚¢ê‡‚É—LŒø‚Å‚·B‚±‚̏ê
  ‡AŽŸ‚̂悤‚ÉŽg‚¢‚Ü‚·:

               # ipchains -D input -s 127.0.0.1 -p icmp -j DENY
               #

  -D ‚̏‘‚«•û‚́A -A (‚Ü‚½‚Í -I ‚© -R) ƒRƒ}ƒ“ƒh‚ÌŽž‚Ɛ³Šm‚É“¯‚¶ƒIƒvƒVƒ‡
  ƒ“‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB‚à‚µA“¯ˆêƒ`ƒFƒCƒ“’†‚É•¡”‚̃}ƒbƒ`‚·‚郋[ƒ‹‚ª
  ‚ ‚Á‚½‚çAÅ‰‚Ì‚à‚Ì‚¾‚¯‚ªíœ‚³‚ê‚Ü‚·B

  4.1.4.  ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ÌŽd—l

  ‚±‚ê‚܂łɁAƒvƒƒgƒRƒ‹‚ðŽw’è‚·‚é `-p' ƒIƒvƒVƒ‡ƒ“‚ƁAƒ\[ƒXƒAƒhƒŒƒX‚ðŽw
  ’è‚·‚é `-s' ƒIƒvƒVƒ‡ƒ“‚ðŒ©‚Ä‚«‚Ü‚µ‚½‚ªA‚±‚Ì‘¼‚É‚àƒpƒPƒbƒg‚Ì“Á’¥‚ðŽw’è
  ‚·‚é—lX‚ȃIƒvƒVƒ‡ƒ“‚ª‚ ‚è‚Ü‚·B‚±‚ê‚©‚çA‚»‚ÌŠT—v‚ð‚ ‚Ü‚·‚Æ‚±‚ë‚È‚­‚¨
  ˜b‚µ‚Ü‚·B

  4.1.4.1.  ƒ\[ƒX‚ƈ¶æ IP ƒAƒhƒŒƒX‚ÌŽw’è

  ƒ\[ƒX (-s) ‹y‚ш¶æ (-d) IP ƒAƒhƒŒƒX‚Í 4’Ê‚è‚ÌŽw’è•û–@‚ª‚ ‚è‚Ü‚·B
  ‚à‚Á‚Æ‚àˆê”Ê“I‚È•û–@‚ÍŠ®‘S‚É‹Lq‚³‚ꂽ–¼‘O(FQDN)‚ðŽg‚¤‚±‚ƂŁA—Ⴆ
  ‚΁A`localhost' ‚Æ‚© `www.linuxhq.com' ‚Å‚·B 2”Ô–Ú‚Ì•û–@‚Í
  `127.0.0.1'‚̂悤‚È IP ƒAƒhƒŒƒX‚ðŽw’è‚·‚é•û–@‚Å‚·B

  3”Ô–Ú‚Æ 4”Ô–Ú‚Ì•û–@‚Í IP ƒAƒhƒŒƒX‚̃Oƒ‹[ƒv‚ðŽw’è‚·‚é•û–@‚ŁA
  `199.95.207.0/24' ‚Æ‚© `199.95.207.0/255.255.255.0' ‚̂悤‚ɏ‘‚«‚Ü‚·B
  —¼•û‚Æ‚à 199.95.207.0 ‚©‚ç 199.95.207.255 ‚Ü‚Å‚Ì‚Ç‚Ì IP ƒAƒhƒŒƒX‚àŠÜ‚Ü
  ‚ê‚éŽw’è‚ŁA”Žš‚Ì‚ ‚Æ‚Ì `/' ‚Í IP ƒAƒhƒŒƒX‚Ì‚Ç‚Ì•”•ª‚Ü‚Å—LŒø‚©‚ðŽ¦‚µ
  ‚Ä‚¢‚Ü‚·BÈ—ªŽž‚Í `/32' ‚Ü‚½‚Í `/255.255.255.255' (IP ƒAƒhƒŒƒX‚ÌŠ®‘S
  ˆê’v)‚Å‚·B‚Ç‚ñ‚È IP ƒAƒhƒŒƒX‚Å‚à‚æ‚¢ê‡‚́AˆÈ‰º‚̂悤‚É `/0' ‚ªŽg‚¦
  ‚Ü‚·:

               # ipchains -A input -s 0/0 -j DENY
               #

  ã‹L‚ÌŒø‰Ê‚Í `-s' ƒIƒvƒVƒ‡ƒ“‚ðŽw’肵‚È‚¢‚Ì‚Æ‘S‚­“¯‚¶‚Ȃ̂ŁA‚±‚ñ‚ÈŽg‚¢
  •û‚Í‚ß‚Á‚½‚É‚µ‚Ü‚¹‚ñB

  4.1.4.2.  ”Û’è‚ÌŽw’è

  `-s' ‚Æ `-d' ‚ðŠÜ‚Þ‘½‚­‚̃tƒ‰ƒO‚́A`!' (”Û’è‚̐錾) ‚ð‚»‚Ìˆø”‚Ì‘O‚É’u
  ‚­‚±‚Æ‚ª‚Å‚«‚Ü‚·B `-s' ‚â `-d' ‚̏ꍇ‚Í—^‚¦‚ç‚ꂽƒAƒhƒŒƒX‚Æ“™‚µ‚­‚È‚¢
  ƒAƒhƒŒƒX‚ƃ}ƒbƒ`‚µ‚Ü‚·B—Ⴆ‚΁A `-s ! localhost' ‚̓[ƒJƒ‹ƒzƒXƒg‚©‚ç
  ‚Å‚È‚¢‘S‚ẴpƒPƒbƒg‚ƃ}ƒbƒ`‚µ‚Ü‚·B

  `!' ‚Ì‘OŒã‚ɃXƒy[ƒX‚ð“ü‚ê‚é‚Ì‚ð–Y‚ê‚È‚¢‚ʼnº‚³‚¢B–{“–‚É•K—v‚È‚Ì‚Å‚·B

  4.1.4.3.  ƒvƒƒgƒRƒ‹‚ÌŽw’è

  ƒvƒƒgƒRƒ‹‚Í `-p' ƒtƒ‰ƒO‚ÅŽw’肵‚Ü‚·BƒvƒƒgƒRƒ‹‚Ì’l‚͔ԍ†(‚ ‚È‚½‚ª IP
  ‚̃vƒƒgƒRƒ‹‚̐”’l”ԍ†‚ð’m‚Á‚Ä‚¢‚éê‡)‚© `TCP', `UDP' ‚Ü‚½‚Í `ICMP'
  ‚Æ‚¢‚¤“Á’è‚Ì–¼Ì‚ÅŽw’肵‚Ü‚·B‘啶Žš¬•¶Žš‚Ì‹æ•Ê‚Í‚µ‚Ü‚¹‚ñ‚©‚çA`tcp'
  ‚à `TCP' ‚Æ“¯‚¶“­‚«‚ð‚µ‚Ü‚·B

  ƒvƒƒgƒRƒ‹–¼Ì‚Í‚»‚ê‚ð”Û’è‚·‚邽‚ß‚É `!' ‚ð‘O‚É•t‚¯‚邱‚Æ‚ª‚Å‚«‚Ü‚·B
  —Ⴆ‚΁A`-p ! TCP' ‚Í TCP ‚Å‚È‚¢ƒpƒPƒbƒg‚ðŽw’肵‚Ü‚·B

  4.1.4.3.1.  UDP ‚Æ TCP ƒ|[ƒg‚ÌŽw’è

  “Á•Ê‚ȏꍇ‚Å‚ ‚é TCP ˆ½‚Í UDP ‚̃vƒƒgƒRƒ‹‚ªŽw’肳‚ꂽŽž‚ɂ́A TCP ˆ½
  ‚Í UDP ‚̃|[ƒgAˆ½‚ÍŠÜ‚Ü‚ê‚éƒ|[ƒg‚Ì”ÍˆÍ (‚µ‚©‚µAŒãq‚Ì ``ƒtƒ‰ƒOƒƒ“
  ƒg‚̏ˆ—''‚ðŽQÆ‚µ‚ĉº‚³‚¢) ‚ðŽw‚µŽ¦‚·Šg’£ˆø”‚ª‘¶Ý‚µ“¾‚Ü‚·B”͈͕͂¶
  Žš `:' ‚Å•\Œ»‚µ‚Ü‚·B—Ⴆ‚Î `6000:6010' ‚Í 6000 ‚©‚ç 6010 –˜‚͈̔͂ɊÜ
  ‚Ü‚ê‚é11ŒÂ‚̃|[ƒg”ԍ†‚ðŽ¦‚µ‚Ü‚·B‚à‚µ‰ºŒÀ’l‚ªÈ—ª‚³‚ê‚ê‚΁AƒfƒtƒHƒ‹ƒg
  ‚Ì 0 ‚ðˆÓ–¡‚µ‚Ü‚·BãŒÀ’l‚ªÈ—ª‚³‚ê‚ê‚΁AƒfƒtƒHƒ‹ƒg‚Ì 65535 ‚ðˆÓ–¡‚µ‚Ü
  ‚·B‚Å‚·‚©‚çA1024”Ԉȉº‚̃|[ƒg‚Ì TCP Ú‘±‚ðŽw’è‚·‚é‚ɂ́A‘‚«•û‚Í
  `-p TCP -s 0.0.0.0/0 :1023' ‚Æ‚µ‚Ü‚·Bƒ|[ƒg”ԍ†‚Í `www' ‚̂悤‚ɁA–¼
  ‘O‚Å‚àŽw’è‚Å‚«‚Ü‚·B

  ’‹L‚Æ‚µ‚āAƒ|[ƒgŽw’è‚Ì‘O‚ɂ͔ےè‚ðˆÓ–¡‚·‚é `!' ‚ð’u‚­‚±‚Æ‚ª‚Å‚«‚Ü
  ‚·B‚Å‚·‚©‚çA WWW ƒpƒPƒbƒgˆÈŠO‚Ì‘S‚Ä‚Ì TCP ƒpƒPƒbƒg‚ðŽw’è‚·‚é‚ɂ́AˆÈ
  ‰º‚̂悤‚ÉŽw’肵‚Ü‚·B

  -p TCP -d 0.0.0.0/0 ! www

  ˆÈ‰º‚ÌŽw’è‚ƁA

  -p TCP -d ! 192.168.1.1 www

  ˆÈ‰º‚ÌŽw’è‚Í‘S‚­ˆá‚¤‚±‚Æ‚ð‚µ‚Á‚©‚è”FŽ¯‚µ‚ĉº‚³‚¢B

  -p TCP -d 192.168.1.1 ! www

  Å‰‚Ì—á‚́A 192.168.1.1 ˆÈŠO‚Ì‘S‚Ẵ}ƒVƒ“‚Ì WWW ƒ|[ƒg‚Ö‚Ì TCP ƒp
  ƒPƒbƒg‚ðŽw’肵‚Ü‚·BŽŸ‚Ì—á‚́A WWW ƒ|[ƒg‚ðœ‚­‘S‚Ẵ|[ƒg‚É‚¨‚¯‚é
  192.168.1.1 ‚Ö‚Ì TCP Ú‘±‚ðŽw’肵‚Ü‚·B

  ÅŒã‚ɁA‚±‚̃P[ƒX‚Í WWW ƒ|[ƒg‚Å‚È‚­A 192.168.1.1 ‚Å‚à‚È‚¢‚±‚Æ‚ðˆÓ–¡
  ‚µ‚Ü‚·:

  -p TCP -d ! 192.168.1.1 ! www

  4.1.4.3.2.  ICMP ƒ^ƒCƒv‚ƃR[ƒh‚ÌŽw’è

  ICMP ‚É‚à‚Ü‚½ƒIƒvƒVƒ‡ƒ“ˆø”‚ª‚ ‚è‚Ü‚·‚ªA ICMP ‚̓|[ƒg‚ðŽ‚¿“¾‚Ü‚¹
  ‚ñB (ICMP ‚ɂ̓^ƒCƒv‚ƃR[ƒh‚ª‚ ‚è‚Ü‚·) ‚»‚ê‚ç‚ɂ͈قȂéˆÓ–¡‚ª‚ ‚è‚Ü
  ‚·B

  `-s' ƒIƒvƒVƒ‡ƒ“‚ÌŒã‚É ICMP ƒl[ƒ€‚ð—p‚¢‚é (ipchains -h icmp ‚ð—p‚¢‚āA
  ƒl[ƒ€‚ðˆê——•\Ž¦‚µ‚Ü‚·) ‚©A ICMP ƒ^ƒCƒv‚ƃR[ƒh‚̐”’l‚ð—p‚¢‚é‚©‚ŁA‚»
  ‚ê‚ç‚ðŽw’肵‚Ü‚·Bƒ^ƒCƒv‚Í `-s' ƒIƒvƒVƒ‡ƒ“‚ÌŒã‚ɁAƒR[ƒh‚Í `-d' ƒIƒv
  ƒVƒ‡ƒ“‚ÌŒã‚ÉŽw’肵‚Ü‚·B

  ICMP ƒl[ƒ€‚Í‚©‚È‚è’·‚¢‚Å‚·: ‘¼‚Æ‚Í‚Á‚«‚è‹æ•Ê‚Å‚«‚镪‚¾‚¯‚Ì’·‚¢•¶Žš—ñ
  ‚Å‚ ‚ê‚Ώ\•ª‚Å‚·B

  Å‚àˆê”Ê“I‚È ICMP ƒpƒPƒbƒg‚̏¬‚³‚Ȉꗗ‚ðˆÈ‰º‚ÉŽ¦‚µ‚Ü‚·:

       ”ԍ†    ƒl[ƒ€                   •K—v‚Æ‚³‚ê‚é‚à‚Ì

       0       echo-reply               ping
       3       destination-unreachable  ‘S‚Ä‚Ì TCP/UDP ƒgƒ‰ƒtƒBƒbƒN
       5       redirect                 ƒ‹[ƒeƒBƒ“ƒOƒf[ƒ‚ƒ“‚ª“®ì‚µ‚Ä‚¢‚È‚¢Žž‚Ì
                                        ƒ‹[ƒeƒBƒ“ƒO
       8       echo-request             ping
       11      time-exceeded            traceroute

  ICMP ƒl[ƒ€‚Í `!' ‚ð’u‚¯‚È‚¢‚±‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢B

  â‘΂ɐâ‘΂ɐâ‘΂ɁA ICMP ƒ^ƒCƒv3 ƒƒbƒZ[ƒW‚Ì‘S•”‚ðƒuƒƒbƒN‚µ‚È‚¢‚Å!!
  (Œãq‚Ì``ICMP ƒpƒPƒbƒg''‚ðŽQÆ‚µ‚ĉº‚³‚¢)

  4.1.4.4.  ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ÌŽw’è

  `-i' ƒIƒvƒVƒ‡ƒ“‚̓}ƒbƒ`‚·‚ׂ«ƒCƒ“ƒ^[ƒtƒFƒCƒX‚Ì–¼‘O‚ðŽw’肵‚Ü‚·BƒCƒ“
  ƒ^[ƒtƒFƒCƒX‚Ƃ́AƒpƒPƒbƒg‚ª“ü‚Á‚Ä—ˆ‚é‚©A‚Ü‚½‚͏o‚čs‚­•¨—ƒfƒoƒCƒX‚Å
  ‚·Bifconig ƒRƒ}ƒ“ƒh‚ðŽg‚Á‚Ä `up' ‚Å‚ ‚é (‚·‚È‚í‚¿A¡“®‚¢‚Ä‚¢‚é)ƒCƒ“
  ƒ^[ƒtƒFƒCƒX‚ðƒŠƒXƒgƒAƒbƒv‚Å‚«‚Ü‚·B

  “ü—ˆ‚·‚éƒpƒPƒbƒg (‚·‚È‚í‚¿A input ƒ`ƒFƒCƒ“‚ð’ʉ߂·‚éƒpƒPƒbƒg) ‚̃Cƒ“
  ƒ^[ƒtƒF[ƒX‚́A‚»‚ê‚炪—¬‚ꍞ‚ñ‚Å—ˆ‚éƒCƒ“ƒ^[ƒtƒF[ƒX‚Å‚ ‚é‚à‚Ì‚ÆŒ©‚È
  ‚³‚ê‚Ü‚·B˜_—“I‚ɂ́Ao‚čs‚­ƒpƒPƒbƒg (output ƒ`ƒFƒCƒ“‚ð’ʉ߂·‚éƒp
  ƒPƒbƒg) ‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚́A‚»‚ê‚炪o‚čs‚­‚Å‚ ‚낤ƒCƒ“ƒ^[ƒtƒF[ƒX
  ‚Å‚ ‚è‚Ü‚·B forward ƒ`ƒFƒCƒ“‚ð’ʉ߂·‚éƒpƒPƒbƒg‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚à‚Ü
  ‚½A‚»‚ê‚炪o‚čs‚­‚Å‚ ‚낤ƒCƒ“ƒ^[ƒtƒF[ƒX‚Å‚·; Ž„‚ɂ́A‚±‚ê‚Í‘S‚­‚Ì
  “Æ’f‚ÉŽv‚¦‚Ü‚·B

  (–ó’: ‚±‚±‚Å’˜ŽÒ‚Í forward ƒ`ƒFƒCƒ“‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚ðo—̓Cƒ“ƒ^[
  ƒtƒF[ƒX‚É‚µ‚½‚±‚ƂɍR‹c‚µ‚Ä‚¢‚é‚悤‚ÉŽv‚¦‚Ü‚·B‚½‚Ô‚ñ’˜ŽÒ‚Í“ü—͂Əo—Í
  ‚Ì—¼•ûŽw’è‚Å‚«‚½‚Ù‚¤‚ª‚æ‚¢‚ÆŽv‚Á‚Ä‚¢‚āA‚Å‚àA ipchains ‚ɂ̓Cƒ“ƒ^[
  ƒtƒFƒCƒX‚ðŽw’è‚·‚éƒIƒvƒVƒ‡ƒ“‚ª -i ‚Ì‚P‚‚µ‚©‚È‚¢‚̂ŁA‚Ç‚¿‚ç‚©‚É‚¹‚´‚é
  ‚¨‚¦‚È‚©‚Á‚½B‚ÆŒ¾‚¤˜b‚¾‚ÆŽv‚¢‚Ü‚·B ipchains ‚ÌŒãŒp‚Å‚ ‚é iptables ‚Å
  ‚́A FORWARD ƒ`ƒFƒCƒ“‚ŁA“ü—͂Əo—Í‚Ì—¼•û‚̃Cƒ“ƒ^[ƒtƒFƒCƒX‚ðŽw’è‚Å‚«
  ‚é‚悤‚É‚È‚Á‚Ä‚Ü‚·B)

  Œ»Ý‘¶Ý‚µ‚Ä‚¢‚È‚¢ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ðŽw’è‚·‚邱‚Æ‚Í‘S‚­–â‘肪‚ ‚è‚Ü‚¹‚ñ
  ‚ªAŽw’肵‚½ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ª up ‚µ‚Ä—ˆ‚é‚܂Ń‹[ƒ‹‚ªƒ}ƒbƒ`‚·‚邱‚Æ‚Í
  ‚ ‚è‚Ü‚¹‚ñB‚±‚ê‚̓_ƒCƒAƒ‹ƒAƒbƒv PPP ƒŠƒ“ƒN(’ʏíƒCƒ“ƒ^[ƒtƒFƒCƒX‚Í
  ppp0 )‚⓯—l‚Ì‚à‚̂ɂ‚¢‚Ä”ñí‚É—LŒø‚Å‚·B

  “Á•Ê‚ȃP[ƒX‚Æ‚µ‚āAƒCƒ“ƒ^[ƒtƒF[ƒX–¼‚̍Ōオ `+' ‚ŏI‚í‚é‚à‚̂́A
  (Œ»Ý‘¶Ý‚µ‚Ä‚¢‚悤‚Æ‚È‚©‚낤‚Æ) ‚»‚Ì•¶Žš—ñ‚©‚çŽn‚Ü‚é‘S‚ẴCƒ“ƒ^[
  ƒtƒF[ƒX‚Ƀ}ƒbƒ`‚µ‚Ü‚·B—Ⴆ‚΁A‘S‚Ä‚Ì PPP ƒCƒ“ƒ^[ƒtƒF[ƒX‚Ƀ}ƒbƒ`‚·
  ‚郋[ƒ‹‚ðŽw’è‚·‚é‚ɂ́A -i ppp+ ƒIƒvƒVƒ‡ƒ“‚ªŽg‚¦‚Ü‚·B

  Žw’肵‚½ƒCƒ“ƒ^[ƒtƒFƒCƒX‚ƈê’v‚µ‚È‚¢ƒpƒPƒbƒg‚Ƀ}ƒbƒ`‚·‚é‚悤‚ɃCƒ“ƒ^[
  ƒtƒFƒCƒX–¼‚Ì‘O‚É‚Í `!' ‚ð’u‚­‚±‚Æ‚ª‚Å‚«‚Ü‚·B

  4.1.4.5.  TCP SYN ƒpƒPƒbƒg‚Ì‚Ý‚ðŽw’è‚·‚é

  ˆê•ûŒü‚¾‚¯ TCP ƒRƒlƒNƒVƒ‡ƒ“‚ð‹–‰Â‚µA‘¼•û‚Í‹–‰Â‚µ‚È‚¢‚悤‚É‚·‚邱‚Æ‚Í
  ‰X‚É‚µ‚Ä—LŒø‚Å‚·B—Ⴆ‚΁A‚ ‚È‚½‚ªŠO•”‚Ì WWW ƒT[ƒo[‚Ɛڑ±‚µ‚½‚¢
  ‚ªA‚»‚̃T[ƒo[‚©‚ç‚̐ڑ±‚ð‹–‰Â‚µ‚½‚­‚È‚¢‚Æ‚«‚Å‚·B

  ‚»‚̃T[ƒo[‚©‚ç—ˆ‚é TCP ƒpƒPƒbƒg‚ðƒuƒƒbƒN‚·‚邱‚Æ‚ÍŽ©‘R‚È•û–@‚Å‚·B
  Žc”O‚È‚±‚ƂɁATCP ƒRƒlƒNƒVƒ‡ƒ“‚É‚Í‚Æ‚É‚©‚­—¼•ûŒü‚̃pƒPƒbƒg‚ªs‚«—ˆ‚·‚é
  ‚±‚Æ‚ª•K—v‚Å‚·B

  ‚»‚Ì‰ðŒˆ•û–@‚́AƒRƒlƒNƒVƒ‡ƒ“—v‹‚É—p‚¢‚ç‚ê‚éƒpƒPƒbƒg‚Ì‚Ý‚ðƒuƒƒbƒN‚·‚é
  ‚±‚Æ‚Å‚·B‚±‚̂悤‚ȃpƒPƒbƒg‚Í SYN ƒpƒPƒbƒg‚ƌĂ΂ê‚Ü‚·B (‹Zp“I‚É
  ‚́ASYN ƒtƒ‰ƒO‚ªÝ’肳‚ê‚Ä‚¢‚āA FIN ‚Æ ACK ƒtƒ‰ƒO‚ªƒNƒŠƒA‚³‚ê‚Ä‚¢‚éƒp
  ƒPƒbƒg‚ðŽw‚µ‚Ü‚·‚ªA‰äX‚Í‚±‚ê‚ð SYN ƒpƒPƒbƒg‚ƌĂт܂·B) ‚»‚ê‚ç‚̃p
  ƒPƒbƒg‚¾‚¯‚ð‹–‰Â‚µ‚È‚¢‚±‚ƂŁA‚»‚̏ê‚̐ڑ±—v‹‚ðŽ~‚ß‚ç‚ê‚Ü‚·B

  `-y' ƒtƒ‰ƒO‚Í‚±‚Ì‚½‚ß‚ÉŽg‚í‚ê‚Ü‚·: ‚±‚ê‚Í TCP ƒvƒƒgƒRƒ‹‚ðŽw’肳‚ê‚Ä‚¢
  ‚éê‡‚É‚¨‚¢‚Ä‚Ì‚Ý—LŒø‚Å‚·B—Ⴆ‚΁A 192.168.1.1 ‚©‚ç—v‹‚³‚ê‚é TCP ƒR
  ƒlƒNƒVƒ‡ƒ“‚ðŽw’è‚·‚é‚É‚Í:

  -p TCP -s 192.168.1.1 -y

  ‚à‚¤ˆê“xA‚±‚̃tƒ‰ƒO‚Í‚»‚Ì‘O‚É `!' ‚ð’u‚­‚±‚Æ‚É‚æ‚Á‚Ä (–ó’: ! -y ‚Æ‚µ
  ‚Ä) ”Û’è‚·‚邱‚Æ‚ª‚Å‚«A‚»‚ê‚͐ڑ±ŠJŽn‚̃pƒPƒbƒg‚ðœ‚­‘S‚ẴpƒPƒbƒg‚ð
  ˆÓ–¡‚µ‚Ü‚·B

  4.1.4.6.  ƒtƒ‰ƒOƒƒ“ƒg‚̏ˆ—

  Žž‚ɁAˆê“x‚ɃP[ƒuƒ‹‚É‘—‚èo‚·‚ɂ̓pƒPƒbƒg‚ª‘å‚«‰ß‚¬‚邱‚Æ‚ª‚ ‚è‚Ü‚·B
  ‚±‚ñ‚È‚Æ‚«‚́AƒpƒPƒbƒg‚̓tƒ‰ƒOƒƒ“ƒg‚É•ªŠ„‚³‚êA•¡”‚̃pƒPƒbƒg‚Å‘—‚ç‚ê
  ‚Ü‚·BŽóM“_‚Å‚±‚ê‚ç‚̃tƒ‰ƒOƒƒ“ƒg‚ðÄ‚яW‚ß‚ÄŠ®‘S‚ȃpƒPƒbƒg‚ɍč\¬‚µ
  ‚Ü‚·B

  ƒtƒ‰ƒOƒƒ“ƒg‚Ì–â‘è“_‚́Aæ’öƒŠƒXƒgƒAƒbƒv‚µ‚½Žd—l‚ÌŠô‚‚© (“Á‚ɁAƒ\[ƒX
  ƒ|[ƒgAˆ¶æƒ|[ƒgA ICMP ƒ^ƒCƒvA ICMP ƒR[ƒhAˆ½‚Í TCP SYN ƒtƒ‰ƒO)
  ‚́AƒJ[ƒlƒ‹‚ɁAÅ‰‚̃tƒ‰ƒOƒƒ“ƒg‚É‚¾‚¯ŠÜ‚Ü‚ê‚Ä‚¢‚éƒpƒPƒbƒg‚ÌŽn‚ß‚Ì•”
  •ª‚ð”`‚­‚悤‚É—v‹‚µ‚Ä‚¢‚é“_‚É‚ ‚è‚Ü‚·B

  ‚ ‚È‚½‚̃}ƒVƒ“‚ªŠO•”ƒlƒbƒgƒ[ƒN‚ɂ̂ݐڑ±‚³‚ê‚é‚È‚çAƒJ[ƒlƒ‹‚Ì "IP:
  í‚Ƀfƒtƒ‰ƒOƒƒ“ƒg‚·‚é" ‚ð Y ‚ɐݒ肵‚ăRƒ“ƒpƒCƒ‹‚·‚邱‚Æ‚É‚æ‚èA’ʉß
  ‚·‚é‘S‚Ẵtƒ‰ƒOƒƒ“ƒg‚ðÄ\’z‚·‚é‚悤‚É Linux ƒJ[ƒlƒ‹‚É–½‚¸‚邱‚Æ‚ª
  ‚Å‚«‚Ü‚·B‚±‚ê‚Í–â‘è‚ð‚¤‚Ü‚­‰ñ”ð‚µ‚Ü‚·B

  ‚»‚¤‚Å‚È‚¯‚ê‚΁AƒtƒBƒ‹ƒ^ƒŠƒ“ƒOƒ‹[ƒ‹‚ªƒtƒ‰ƒOƒƒ“ƒg‚ð‚ǂ̂悤‚Ɉµ‚¤‚©‚ð
  —‰ð‚·‚邱‚Æ‚ªd—v‚Å‚·Bî•ñ‚ª–³‚¯‚ê‚΂ǂñ‚ȃtƒBƒ‹ƒ^ƒŠƒ“ƒOƒ‹[ƒ‹‚àƒ}ƒb
  ƒ`‚µ‚Ü‚¹‚ñB‚±‚̈Ӗ¡‚·‚é‚Æ‚±‚ë‚Í 1”Ԗڂ̃tƒ‰ƒOƒƒ“ƒg‚Í‘¼‚̃pƒPƒbƒg‚Æ“¯
  ‚¶‚悤‚Ɉµ‚í‚ê‚Ü‚·B 2”Ԗڈȍ~‚̃tƒ‰ƒOƒƒ“ƒg‚͈قȂè‚Ü‚·B]‚Á‚āA -p
  TCP -s 192.168.1.1 www ‚Æ‚¢‚¤ƒ‹[ƒ‹ (ƒ\[ƒXƒ|[ƒg‚ª `www' ‚ÌŽw’è)‚́A
  ƒtƒ‰ƒOƒƒ“ƒg(1”Ԗڂ̃tƒ‰ƒOƒƒ“ƒgˆÈŠO)‚ÆŒˆ‚µ‚ă}ƒbƒ`‚µ‚Ü‚¹‚ñB“¯—l‚É”Û
  ’è‚̃‹[ƒ‹ -p TCP -s 192.168.1.1 ! www ‚àƒ}ƒbƒ`‚µ‚Ü‚¹‚ñB

  ‚Æ‚Í‚¢‚¦A`-f' ƒtƒ‰ƒO‚ð—p‚¢‚āA 2”Ô–Ú‹y‚Ñ‚»‚êˆÈ~‚̃tƒ‰ƒOƒƒ“ƒg‚ɍ‡’v
  ‚·‚郋[ƒ‹‚ðŽw’è‚Å‚«‚Ü‚·B–¾‚ç‚©‚ɁA‚±‚̂悤‚ȃtƒ‰ƒOƒƒ“ƒgƒ‹[ƒ‹‚É‚Í
  TCP ‚â UDP ƒ|[ƒgA ICMP ƒ^ƒCƒvA ICMP ƒR[ƒhˆ½‚Í TCP SYN ƒtƒ‰ƒO‚ðŽw’è
  ‚·‚é‚̂͊ԈႢ‚Å‚·B

  ‚Ü‚½A`!' ‚ð `-f' ‚Ì‘O‚É•t‚¯‚āA 2”Ԗڈȍ~‚̃tƒ‰ƒOƒƒ“ƒg‚Æ“K‡‚µ‚È‚¢ƒ‹
  [ƒ‹‚ÌŽw’è‚à‚Å‚«‚Ü‚·B

  ’ʏíAƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Í 1”Ԗڂ̃tƒ‰ƒOƒƒ“ƒg‚ÉŒø—Í‚ª‚ ‚é‚̂ŁA–Ú“I‚̃zƒX
  ƒg‚ł̃tƒ‰ƒOƒƒ“ƒg‚̍đg‚Ý—§‚Ä‚ð–W‚°‚邽‚߁A2”Ԗڈȍ~‚̃tƒ‰ƒOƒƒ“ƒg‚ð
  ’ʉ߂³‚¹‚邱‚Ƃ͈À‘S‚Æ‚Ý‚È‚³‚ê‚Ä‚¢‚Ü‚·B‚Æ‚Í‚¢‚¦Aƒtƒ‰ƒOƒƒ“ƒg‚𑗂邱
  ‚Æ‚É‚æ‚èŠÈ’P‚Ƀ}ƒVƒ“‚ðƒNƒ‰ƒbƒVƒ…‚³‚¹‚邱‚Æ‚ª‚Å‚«‚éƒoƒO‚ª’m‚ç‚ê‚Ä‚¢‚Ü
  ‚·B’²‚ׂĉº‚³‚¢‚ˁB

  ƒlƒbƒgƒ[ƒNŠÇ—ŽÒ‚Ì‚½‚ß‚Ì’‹L: ˆÙí‚ȃpƒPƒbƒg(TCP, UDP ‚¨‚æ‚Ñ ICMP ‚Ì
  ƒpƒPƒbƒg‚Å’Z‚·‚¬‚ătƒ@ƒCƒA[ƒEƒH[ƒ‹‚̃R[ƒh‚ªƒ|[ƒg”ԍ†‚Ü‚½‚Í ICMP ‚Ì
  ƒR[ƒh‚ÆŽí—Þ‚ð“Ç‚ß‚È‚¢‚à‚Ì)‚́Aƒtƒ‰ƒOƒƒ“ƒg‚Æ“¯—l‚ÉŽæ‚舵‚í‚ê‚Ü‚·Bƒt
  ƒ‰ƒOƒƒ“ƒg‚̈ʒu‚ª 8 ‚©‚çŽn‚Ü‚éTCP ƒpƒPƒbƒg‚¾‚¯‚ª–¾”’‚Ƀtƒ@ƒCƒAƒEƒH[
  ƒ‹ƒR[ƒh‚É‚æ‚Á‚Ä”jŠü‚³‚ê‚Ü‚·B(‚±‚ꂪ”­¶‚·‚é‚Æ syslog ‚ɃƒbƒZ[ƒW‚ª
  Œ»‚ê‚Ü‚·B)

  —Ⴆ‚΁AŽŸ‚̃‹[ƒ‹‚Í 192.168.1.1 ‚֍s‚­ƒtƒ‰ƒOƒƒ“ƒg‚Í‚Ç‚ê‚Å‚à”jŠü‚µ‚Ü
  ‚·:

       # ipchains -A output -f -d 192.168.1.1 -j DENY
       #

  4.1.5.  ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Ì•›ŽŸ“IŒø‰Ê

  ‚³‚āA¡‰äX‚̓‹[ƒ‹‚ð—p‚¢‚ăpƒPƒbƒg‚Ƀ}ƒbƒ`‚³‚¹‚é•û–@‚Ì‘S‚Ä‚ð’m‚è‚Ü‚µ
  ‚½BƒpƒPƒbƒg‚ªƒ‹[ƒ‹‚Ƀ}ƒbƒ`‚·‚é‚ƁAˆÈ‰º‚É‹L‚·‚±‚Æ‚ª‹N‚±‚è‚Ü‚·:

  1. ŠY“–‚·‚郋[ƒ‹‚̃oƒCƒgƒJƒEƒ“ƒ^‚̓pƒPƒbƒg‚̃TƒCƒY(ƒwƒbƒ_‚Æ‚»‚Ì‘¼‘S
     ‚Ä) ‚É‚æ‚Á‚Ä‘‰Á‚µ‚Ü‚·B

  2. ŠY“–‚·‚郋[ƒ‹‚̃pƒPƒbƒgƒJƒEƒ“ƒ^‚ªƒpƒPƒbƒg‚̐”‚É‚æ‚Á‚Ä1 ‰ÁŽZ‚³‚ê‚Ü
     ‚·B

  3. ƒ‹[ƒ‹‚ª—v‹‚·‚é‚È‚çAƒpƒPƒbƒg‚ªƒƒO‚É‹L˜^‚³‚ê‚Ü‚·B

  4. ƒ‹[ƒ‹‚ª—v‹‚·‚é‚È‚çAƒpƒPƒbƒg‚Ì Type Of Service (TOS) ƒtƒB[ƒ‹ƒh‚ª
     •ÏX‚³‚ê‚Ü‚·B

  5. ƒ‹[ƒ‹‚ª—v‹‚·‚é‚È‚çAƒpƒPƒbƒg‚Ɉ󂪕t‚¯‚ç‚ê‚Ü‚·B(2.0 ƒJ[ƒlƒ‹ƒVƒŠ
     [ƒY‚É‚Í‚ ‚è‚Ü‚¹‚ñB)

  6. ƒpƒPƒbƒg‚ɑ΂µAŽŸ‚ɉ½‚ðs‚킹‚é‚©‚ðŒˆ’è‚·‚é‚ׂ­Aƒ‹[ƒ‹ƒ^[ƒQƒbƒg
     ‚ªŒŸ¸‚³‚ê‚Ü‚·B

  ‚±‚ê‚çˆÈŠO‚ÌŽí—ނɂ‚¢‚ẮAd—v“x‚ɉž‚¶‚ÄŽè‚ð•t‚¯‚½‚¢‚ÆŽv‚¢‚Ü‚·B

  4.1.5.1.  ƒ^[ƒQƒbƒg‚ÌŽw’è

  ƒ^[ƒQƒbƒg‚̓‹[ƒ‹‚Ƀ}ƒbƒ`‚·‚éƒpƒPƒbƒg‚ɑ΂µ‰½‚ð‚·‚×‚«‚©‚ðƒJ[ƒlƒ‹‚ÉŽw
  Ž¦‚µ‚Ü‚·B ipchains ‚̓^[ƒQƒbƒg‚ÌŽw’è‚É `-j' ‚ð—p‚¢‚Ü‚·B(`ƒWƒƒƒ“ƒv‚·
  ‚é'‚ƍl‚¦‚ĉº‚³‚¢) ƒ^[ƒQƒbƒg–¼‚Í 8•¶ŽšˆÈ‰º‚Å‚È‚¯‚ê‚΂Ȃ炸A‚Ü‚½‘召
  •¶Žš‚ð‹æ•Ê‚µ‚Ü‚·: "RETURN" ‚Æ "return" ‚Í‘S‚­•Ê•¨‚Å‚·B

  Å‚à’Pƒ‚ȃP[ƒX‚ÍŽw’肳‚ê‚éƒ^[ƒQƒbƒg‚ª‘S‚­‚È‚¢ê‡‚Å‚·B‚±‚̃‹[ƒ‹‚Ì
  ƒ^ƒCƒv (‚µ‚΂µ‚Î `Œv”' ƒ‹[ƒ‹‚ƌĂ΂ê‚Ü‚·) ‚Í’Pƒ‚Ɉê’è‚̃pƒPƒbƒg‚̃^
  ƒCƒv‚ðƒJƒEƒ“ƒg‚·‚é‚Ì‚É•Ö—˜‚Å‚·B‚±‚̃‹[ƒ‹‚Ƀ}ƒbƒ`‚·‚é‚©”Û‚©‚É‚©‚©‚í‚ç
  ‚¸AƒJ[ƒlƒ‹‚Í’Pƒ‚Ƀ`ƒFƒCƒ““à‚ÌŽŸ‚̃‹[ƒ‹‚ðŒŸ¸‚µ‚Ü‚·B—Ⴆ‚΁A
  192.168.1.1 ‚©‚ç‚̃pƒPƒbƒg‚̐”‚𐔂¦‚é‚ɂ́AˆÈ‰º‚̂悤‚É‚Å‚«‚Ü‚·:

       # ipchains -A input -s 192.168.1.1
       #

  (`ipchains -L -v' ‚ð—p‚¢‚āAŠeX‚̃‹[ƒ‹‚ÉŠÖ˜A•t‚¯‚ç‚ꂽƒoƒCƒg‹y‚уp
  ƒPƒbƒgƒJƒEƒ“ƒ^‚ðŒ©‚ê‚Ü‚·B)

  6‚‚̓Á•Ê‚ȃ^[ƒQƒbƒg‚ª‚ ‚è‚Ü‚·BÅ‰‚Ì 3‚Â‚Ì ACCEPT, REJECT ‚Æ DENY
  ‚Í‚Æ‚Ä‚à’Pƒ‚Å‚·B ACCEPT ‚̓pƒPƒbƒg‚Ì’Ê‰ß‚ð‹–‰Â‚µ‚Ü‚·B DENY ‚Í‚ ‚½‚©
  ‚àƒpƒPƒbƒg‚ðŽó‚¯Žæ‚Á‚Ä‚¢‚È‚¢‚©‚̂悤‚É”jŠü‚µ‚Ü‚·B REJECT ‚̓pƒPƒbƒg‚ð
  ”jŠü‚µ‚Ü‚·‚ªA(‚à‚µ‚»‚ꂪ ICMP ƒpƒPƒbƒg‚Å‚È‚¢‚È‚ç) ˆ¶æ‚Í–¢“ž’B‚Å‚ ‚é
  ‚±‚Æ‚ð’m‚点‚é ICMP •Ô“š‚ðAƒ\[ƒX‚ɑ΂µ‚ж¬‚µ‚Ü‚·B

  ŽŸ‚̈ꂁA MASQ ‚̓J[ƒlƒ‹‚ɃpƒPƒbƒg‚ðƒ}ƒXƒJƒŒ[ƒh‚·‚邱‚Æ‚ð’m‚点‚Ü
  ‚·B‚±‚ê‚𓮍삳‚¹‚é‚ɂ́AƒJ[ƒlƒ‹‚ª IP ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ð—LŒø‚É‚µ‚Ä
  ƒRƒ“ƒpƒCƒ‹‚³‚ê‚Ä‚¢‚é•K—v‚ª‚ ‚è‚Ü‚·BÚ×‚ɂ‚¢‚ẮA Masquerading-
  HOWTO ‚ƁA•t˜^‚Ì``ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ''‚ðŒ©‚Ä‰º‚³‚¢B‚±‚̃^[
  ƒQƒbƒg‚Í forward ƒ`ƒFƒCƒ“‚ð’ʉ߂·‚éƒpƒPƒbƒg‚É‚¨‚¢‚Ä‚Ì‚Ý—LŒø‚Å‚·B

  ‘¼‚ÌŽå—v‚È“Á•Ê‚ȃ^[ƒQƒbƒg‚́AƒJ[ƒlƒ‹‚ɑ΂µ‚āA‰½ˆ‚©‚ç”­¶‚µ‚½‚©‚ð–â
  ‚킸‚ɃpƒPƒbƒg‚ðƒ[ƒJƒ‹ƒ|[ƒg‚Ö‘—‚éA REDIRECT ‚Å‚·B‚±‚ê‚̓vƒƒgƒRƒ‹
  ‚É TCP ‚Ü‚½‚Í UDP ‚ðŽw’肵‚Ä‚¢‚郋[ƒ‹‚É‚¨‚¢‚Ä‚Ì‚ÝŽw’è‚Å‚«‚Ü‚·B”CˆÓ
  ‚ɁAƒ|[ƒg (–¼‘O–”‚͔ԍ†) ‚Í `-j REDIRECT' ‚ÆŽw’è‚Å‚«‚Ü‚·B‚±‚ê‚̓p
  ƒPƒbƒg‚ª‘¼‚̃|[ƒg‚ÖƒAƒhƒŒƒX‚³‚ê‚Ä‚¢‚½‚Æ‚µ‚Ä‚à“Á’è‚̃|[ƒg‚Ö“]‘—‚³‚¹‚é
  Œø‰Ê‚ðŽ‚¿‚Ü‚·B‚±‚̃^[ƒQƒbƒg‚Í input ƒ`ƒFƒCƒ“‚ð’ʉ߂·‚éƒpƒPƒbƒg‚É‚¨
  ‚¢‚Ä‚Ì‚Ý—LŒø‚Å‚·B

  ÅŒã‚Ì“Á•Ê‚ȃ^[ƒQƒbƒg‚Í RETURN ‚ŁA’¼‚¿‚Ƀ`ƒFƒCƒ“‚̍Ōã‚É—Ž‚µž‚Þ‚±‚Æ
  ‚Æ“™‰¿‚Å‚·B(Œãq‚Ì``ƒ|ƒŠƒV[‚ðÝ’è‚·‚é''‚ðŽQÆ‚µ‚ĉº‚³‚¢B)

  ‘¼‚̃^[ƒQƒbƒg‚̓†[ƒU[Žw’è‚̃`ƒFƒCƒ“‚ðŽ¦‚µ‚Ü‚·B (Œãq‚Ì``ƒ`ƒFƒCƒ“‚Ì
  ‘€ì''‚Åà–¾‚µ‚Ä‚¢‚Ü‚·B) ƒpƒPƒbƒg‚Í‚»‚̃`ƒFƒCƒ““à‚̃‹[ƒ‹‚ð’ʉ߂µŽn‚ß
  ‚Ü‚·B‚»‚̃†[ƒU’è‹`ƒ`ƒFƒCƒ“‚Å‚ÌŒŸ¸‚ª‘S‚ďI‚Á‚Ä‚àƒpƒPƒbƒg‚̉^–½‚ªŒˆ‚Ü
  ‚ç‚È‚¯‚ê‚΁AŒ»Ý‚̃`ƒFƒCƒ“‚É–ß‚èA‚»‚ÌŽŸ‚̃‹[ƒ‹‚©‚猟¸‚ðÄŠJ‚µ‚Ü‚·B

  ASCII ƒA[ƒg‚ÌŽžŠÔ‚Å‚·B2‚‚Ì(‚¨‚΂©‚³‚ñ‚È)ƒ`ƒFƒCƒ“: input (‘g‚ݍž‚ݍÏ
  ‚݃`ƒFƒCƒ“)‚Æ test (ƒ†[ƒU’è‹`ƒ`ƒFƒCƒ“)‚ōl‚¦‚Ü‚µ‚傤B

           `input'                          `test'
          „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¢ „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¢
          „ ƒ‹[ƒ‹ 1: -p ICMP -j REJECT „  „ ƒ‹[ƒ‹ 1: -s 192.168.1.1  „ 
          „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„§ „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„§
          „ ƒ‹[ƒ‹ 2: -p TCP -j Test    „  „ ƒ‹[ƒ‹ 2: -d 192.168.1.1  „ 
          „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„§ „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„£
          „ ƒ‹[ƒ‹ 3: -p UDP -j DENY    „ 
          „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„£

  192.168.1.1 ‚©‚ç—ˆ‚Ä 1.2.3.4 ‚ÖŒü‚©‚¤ TCP ƒpƒPƒbƒg‚ɂ‚¢‚čl‚¦‚Ü‚µ‚å
  ‚¤BƒpƒPƒbƒg‚Í input ƒ`ƒFƒCƒ“‚É“ü‚èA‚Ü‚¸Aƒ‹[ƒ‹ 1 ‚ªŒŸ¸‚³‚ê‚Ü‚·\
  ƒ}ƒbƒ`‚µ‚Ü‚¹‚ñBƒ‹[ƒ‹ 2 ‚ªƒ}ƒbƒ`‚µ‚āA‚»‚̃^[ƒQƒbƒg‚Í Test ‚Ȃ̂ŁA
  ŽŸ‚ÉŒŸ¸‚³‚ê‚郋[ƒ‹‚Í Test ‚̐擪‚Å‚·B Test ‚̃‹[ƒ‹ 1 ‚̓}ƒbƒ`‚µ‚Ü
  ‚·‚ªAƒ^[ƒQƒbƒg‚ðŽw’肵‚Ä‚¢‚È‚¢‚̂ŁAŽŸ‚̃‹[ƒ‹‚Å‚ ‚郋[ƒ‹ 2 ‚ªŒŸ¸
  ‚³‚ê‚Ü‚·B‚±‚ê‚̓}ƒbƒ`‚µ‚È‚¢‚̂ŁAƒ`ƒFƒCƒ“‚̏I‚í‚è‚É’B‚µ‚Ü‚µ‚½Bæ’öŒŸ
  ¸‚µ‚½ƒ‹[ƒ‹ 2 ‚Ì‚ ‚é input ƒ`ƒFƒCƒ“‚É–ß‚èA‚»‚ê‚ō¡“x‚̓‹[ƒ‹ 3 ‚ªŒŸ
  ¸‚³‚ê‚Ü‚·‚ªA‚±‚ê‚à‚Ü‚½ƒ}ƒbƒ`‚µ‚Ü‚¹‚ñB

  ‚»‚ê‚ŁAƒpƒPƒbƒg‚ÌŒo˜H‚ÍŽŸ‚̂悤‚É‚È‚è‚Ü‚·:

                                  v    __________________________
           `input'                |   /     `Test'               v
          „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ|„Ÿ/     „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ|„Ÿ„¢
          „ ƒ‹[ƒ‹ 1              | /„     „ ƒ‹[ƒ‹ 1            |  „ 
          „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ|/-„§    „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ|„Ÿ„§
          „ ƒ‹[ƒ‹ 2              /  „     „ ƒ‹[ƒ‹ 2            |  „ 
          „¥„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ-„Ÿ„§    „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿv„Ÿ„£
          „ ƒ‹[ƒ‹ 3              /„Ÿ„©„Ÿ\_______________________/
          „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ|„Ÿ„£
                                  v

  ƒ†[ƒU’è‹`ƒ`ƒFƒCƒ“‚ðŒø‰Ê“I‚ÉŽg‚¤•û–@‚́A``ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð‚Ç‚Ì
  ‚悤‚ɍ\’z‚·‚é‚©''‚̏͂ðŽQÆ‚µ‚ĉº‚³‚¢B

  4.1.5.2.  ƒpƒPƒbƒg‚̃ƒO‹L˜^

  ‚±‚ê‚̓‹[ƒ‹‚Ƀ}ƒbƒ`‚·‚邱‚Æ‚Ì•›ŽŸ“IŒø‰Ê‚Å‚·; ƒ}ƒbƒ`‚µ‚½ƒpƒPƒbƒg‚ð
  `-l' ƒtƒ‰ƒO‚ð—p‚¢‚ăƒO‚É‹L˜^‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B•’ʁA’ʏí‚̃pƒPƒbƒg
  ‚É‚¨‚¢‚ăƒO‚ð‹L˜^‚µ‚½‚­‚Í‚È‚¢‚Å‚µ‚傤‚¯‚ǁA—áŠO“I‚ȃCƒxƒ“ƒg‚ðŒ©‚½‚¢Žž
  ‚É•Ö—˜‚È“Á’¥‚Å‚·B

  ‚±‚̏î•ñ‚̃J[ƒlƒ‹‚̃ƒO‚͈ȉº‚̂悤‚ÈŠ´‚¶‚Å‚·:

       Packet log: input DENY eth0 PROTO=17 192.168.2.1:53 192.168.1.1:1025
         L=34 S=0x00 I=18 F=0x0000 T=254

  ‚±‚̃ƒOƒƒbƒZ[ƒW‚ÍŠÈŒ‰‚ɐ݌v‚³‚ê‚Ä‚¨‚èAƒlƒbƒgƒ[ƒN‚ÌŒ ˆÐŽÒ‚ׂ̈¾‚¯
  ‚É•Ö—˜‚È‹Zpî•ñ‚ðŠÜ‚ñ‚Å‚¢‚Ü‚·‚ªA‚ ‚Ƃ̉äX‚É‚à—L—p‚Å‚·BŠÈ’P‚Éà–¾‚·
  ‚é‚ƈȉº‚̂悤‚É‚È‚è‚Ü‚·:

  1. `input' ‚̓pƒPƒbƒg‚Ƀ}ƒbƒ`‚µ‚½ƒ‹[ƒ‹‚ðŠÜ‚Þƒ`ƒFƒCƒ“‚ŁAƒƒOƒƒbƒZ[
     ƒW‚𔭐¶‚µ‚Ä‚¢‚Ü‚·B

  2. `DENY' ‚̓‹[ƒ‹‚ªƒpƒPƒbƒg‚ɉ½‚ð‚·‚é‚©‚ðŽ¦‚µ‚Ä‚¢‚Ü‚·B‚à‚µ‚±‚ꂪ `-'
     ‚È‚çAƒ‹[ƒ‹‚̓pƒPƒbƒg‚ɉ½‚às‚¢‚Ü‚¹‚ñB (Œv”ƒ‹[ƒ‹‚Å‚·B)

  3. `eth0' ‚̓Cƒ“ƒ^[ƒtƒF[ƒX–¼‚Å‚·.  ‰½ŒÌ‚È‚ç‚΂±‚ê‚Í input ƒ`ƒFƒCƒ“‚Å
     ‚ ‚è, ƒpƒPƒbƒg‚Í `eth0' ‚©‚ç“ü‚Á‚Ä—ˆ‚½‚±‚Æ‚ðˆÓ–¡‚·‚é‚©‚ç‚Å‚·B

  4. `PROTO=17' ‚̓pƒPƒbƒg‚ªƒvƒƒgƒRƒ‹ 17 ‚Å‚ ‚Á‚½‚±‚Æ‚ðˆÓ–¡‚µ‚Ü‚·Bƒvƒ
     ƒgƒRƒ‹”ԍ†‚̃ŠƒXƒg‚Í /etc/protocols ‚É‚Ä—^‚¦‚ç‚ê‚Ü‚·BÅ‚àˆê”Ê“I‚È
     ‚à‚Ì‚Í 1 (ICMP), 6 (TCP) ‚Æ 17 (UDP) ‚Å‚·B

  5. `192.168.2.1' ‚̓pƒPƒbƒg‚̃\[ƒX IP ƒAƒhƒŒƒX‚Í 192.168.2.1 ‚Å‚ ‚Á‚½
     ‚±‚Æ‚ðˆÓ–¡‚µ‚Ü‚·B

  6. `:53' ‚̓\[ƒXƒ|[ƒg‚̓|[ƒg 53 ”Ô‚Å‚ ‚Á‚½‚±‚Æ‚ðˆÓ–¡‚µ‚Ü‚·B
     `/etc/services' ‚ðŒ©‚ê‚΁A‚±‚ꂪ `domain' ƒ|[ƒg‚Å‚ ‚邱‚Æ‚ðŠJŽ¦‚µ
     ‚Ä‚¢‚Ü‚·B(‚·‚È‚í‚¿A‚±‚ê‚Í‹°‚ç‚­ DNS ‚Ì•Ô“š‚Å‚·B) UDP ‚Æ TCP ‚É‚¨
     ‚¢‚ẮA‚±‚̔ԍ†‚̓\[ƒXƒ|[ƒg‚Å‚·B ICMP ‚É‚¨‚¢‚ẮA ICMP ƒ^ƒCƒv
     ‚Å‚·B‚»‚êˆÈŠO‚ł́A 65535 ‚É‚È‚é‚Å‚µ‚傤B

  7. `192.168.1.1' ‚͈¶æ IP ƒAƒhƒŒƒX‚Å‚·B

  8. `:1025' ‚͈¶æƒ|[ƒg‚Í 1025 ‚Å‚ ‚Á‚½‚±‚Æ‚ðˆÓ–¡‚µ‚Ü‚·B UDP ‚Æ TCP
     ‚É‚¨‚¢‚ẮA‚±‚̔ԍ†‚͈¶æƒ|[ƒg‚Å‚·B ICMP‚É‚¨‚¢‚ẮA ICMP ƒR[ƒh
     ‚Å‚·B‚»‚êˆÈŠO‚ł́A 65535 ‚É‚È‚é‚Å‚µ‚傤B

  9. `L=34' ‚́AƒpƒPƒbƒg‚͍‡Œv 34 ƒoƒCƒg’·‚Å‚ ‚Á‚½‚±‚Æ‚ðˆÓ–¡‚µ‚Ü‚·B

  10.
     `S=0x00' ‚Í TOS ƒtƒB[ƒ‹ƒh‚ðˆÓ–¡‚µ‚Ü‚·B (4 ‚ÅŠ„‚Á‚āA ipchains ‚Å
     —p‚¢‚ç‚ê‚éƒT[ƒrƒX‚ÌŒ^‚ª“¾‚ç‚ê‚Ü‚·B)

  11.
     `I=18' ‚Í IP ‚Ì ID ‚Å‚·B

  12.
     `F=0x0000' ‚Í 16 ƒrƒbƒg‚̃tƒ‰ƒOƒƒ“ƒgƒIƒtƒZƒbƒg‚ƃtƒ‰ƒO‚̉ÁŽZ‚Å‚·B
     `0x4' –”‚Í `0x5' ‚ÅŽn‚Ü‚é’l‚Í uƒtƒ‰ƒOƒƒ“ƒg‚µ‚Ä‚¢‚È‚¢vƒrƒbƒg‚ªÝ
     ’肳‚ê‚Ä‚¢‚邱‚Æ‚ðŽ¦‚µ‚Ü‚·B `0x2' –”‚Í `0x3' ‚Í `X‚Ƀtƒ‰ƒOƒƒ“ƒg
     ‚µ‚Ä‚¢‚é' ƒrƒbƒg‚ªÝ’肳‚ê‚Ä‚¢‚邱‚Æ‚ðŽ¦‚µ‚Ü‚·; ‚±‚ÌŒã‚ɍX‚È‚éƒtƒ‰
     ƒOƒƒ“ƒg‚ª—\‘ª‚³‚ê‚Ü‚·BŽc‚è‚̐”’l‚Í‚±‚̃tƒ‰ƒOƒƒ“ƒg‚̃IƒtƒZƒbƒg
     ‚ŁA‚»‚ê‚Í 8 ‚ÅŠ„‚Á‚½’l‚Å‚·B

  13.
     `T=254' ‚̓pƒPƒbƒg‚ÌŽõ–½ŽžŠÔ‚Å‚·B‚±‚Ì’l‚Í‘S‚Ẵzƒbƒv–ˆ‚ÉŒ¸‚¶‚ç
     ‚êA‘åŠT 15 ‚© 255 ‚ÅŽn‚Ü‚è‚Ü‚·B

  14.
     `(#5)' ‚́Aƒuƒ‰ƒPƒbƒg“à‚̍Ōã‚̔ԍ†‚ª‚»‚ê‚æ‚èV‚µ‚¢ƒJ[ƒlƒ‹‚Å‚ ‚낤
     ‚±‚Æ‚ðŽ¦‚µ‚Ü‚·B(‹°‚ç‚­ 2.2.9 ˆÈ~‚Å‚µ‚傤B) ÅŒã‚ɁA‚æ‚èV‚µ‚¢ƒJ
     [ƒlƒ‹(‚½‚Ô‚ñ 2.2.9 ˆÈ~)‚ŁAŠ‡ŒÊ‚ň͂܂ꂽ”ԍ†‚ª‚ ‚é‚Å‚µ‚傤B

     (–ó’: Œ´•¶‚É‚Í This is the rule number which caused the packet
     log.  ‚Ə‘‚©‚ê‚Ä‚¢‚Ü‚·‚ªA‚±‚ê‚Í finally there may be a number ...
     ‚ÆŽv‚í‚ê‚Ü‚·B)

  •W€“I‚È Linux ƒVƒXƒeƒ€‚ł́AƒJ[ƒlƒ‹‚̏o—Í‚Í klogd (ƒJ[ƒlƒ‹ƒƒMƒ“ƒO
  ƒf[ƒ‚ƒ“) ‚É‚Ä•ß‘¨‚³‚êA syslogd (ƒVƒXƒeƒ€ƒƒMƒ“ƒOƒf[ƒ‚ƒ“) ‚É“n‚³‚ê‚Ü
  ‚·B `/etc/syslog.conf' ‚́AŠeX‚Ì `facility' (‰äX‚̏ꍇ‚́Afacility
  ‚Í "ƒJ[ƒlƒ‹"‚Å‚·) ‚̈¶æ‚ƁA `level' (ipchains ‚ׂ̈ɁAŽg‚í‚ê‚é level
  ‚Í "info" ‚Å‚·)‚ðŽw’è‚·‚邱‚Æ‚É‚æ‚Á‚āA syslogd ‚̐U‚é•‘‚¢‚𐧌䂵‚Ü
  ‚·B

  —Ⴆ‚΁AŽ„‚Ì (Debian) /etc/syslog.conf ‚Í `kern.info' ‚Ƀ}ƒbƒ`‚·‚é 2s
  ‚ðŠÜ‚ñ‚Å‚¢‚Ü‚·:

       kern.*                          -/var/log/kern.log
       *.=info;*.=notice;*.=warn;\
               auth,authpriv.none;\
               cron,daemon.none;\
               mail,news.none          -/var/log/messages

  ‚±‚ê‚ç‚̓ƒbƒZ[ƒW‚ª `/var/log/kern.log' ‚Æ `/var/log/messages' ‚É•¡»
  ‚³‚ê‚邱‚Æ‚ðŽ¦‚µ‚Ä‚¢‚Ü‚·BÚ×‚Í `man syslog.conf' ‚ðŒ©‚Ä‰º‚³‚¢B

  4.1.5.3.  ƒT[ƒrƒX‚ÌŒ^‚𑀍삷‚é

  IP ƒwƒbƒ_‚É‚Í–Å‘½‚ÉŽg‚í‚ê‚È‚¢ 4‚‚̃rƒbƒg‚ª‚ ‚èAuƒT[ƒrƒX‚ÌŒ^v
  (TOS) ƒrƒbƒg‚ƌĂ΂ê‚Ä‚¢‚Ü‚·B‚»‚ê‚ç‚̓pƒPƒbƒg‚ªŽæ‚舵‚í‚ê‚é—p“r‚ɉe‹¿
  ‚µ‚Ü‚·; 4‚‚̃rƒbƒg‚Í "Minimum Delay"(Å¬’x‰„), "Maximum Throughput"
  (Å‘又—”\—Í), "Maximum Reliability"(Å‘åM—Š’l) ‚»‚µ‚Ä "Minimum
  Cost" (Å¬ƒRƒXƒg) ‚Å‚·B‚»‚ê‚ç‚̃rƒbƒg‚̈ê‚‚¾‚¯‚ªÝ’è‚ð‹–‚³‚ê‚Ü‚·B
  TOS ‘€ìƒR[ƒh‚̍ìŽÒ‚Ì Rob van Nieuwkerk ‚͈ȉº‚̂悤‚ɏq‚ׂĂ¢‚Ü‚·:

       “Á‚É "Minimum Delay"(Å¬’x‰„) ‚ªŽ„‚É‚Æ‚Á‚ďd—v‚Å‚·BŽ„‚͏ã
       —¬‚Ì (Linux) ƒ‹[ƒ^‚Å"‘ΘbŒ^"ƒpƒPƒbƒg‚ׂ̈ɂ±‚̃XƒCƒbƒ`‚ðƒI
       ƒ“‚µ‚Ä‚¢‚Ü‚·BŽ„‚̃}ƒVƒ“‚Í 33.6k ƒ‚ƒfƒ€‚ÅŠO•”‚Ɛڑ±‚³‚ê‚Ä‚¢
       ‚Ü‚·B Linux ‚̓pƒPƒbƒg‚É 3‚‚̃Lƒ…[‚Å—Dæ‡ˆÊ‚ð•t‚¯‚Ä‚¢‚Ü
       ‚·B‚±‚Ì•û–@‚ÅŽ„‚Í‘å—ʂ̃_ƒEƒ“ƒ[ƒh‚Æ“¯Žž‚É‹–—e‚Å‚«‚é‘Θb“I
       ‚ȃpƒtƒH[ƒ}ƒ“ƒX‚𓾂Ă¢‚Ü‚·B (‚±‚ê‚̓VƒŠƒAƒ‹ƒhƒ‰ƒCƒo‚É‚»‚Ì
       ‚悤‚È‹‘å‚ȃLƒ…[‚ª‚È‚¯‚ê‚Ηǂ¢‚Ì‚Å‚·‚ªA‘Ò‚¿ŽžŠÔ‚Í1.5•b‚É
       —Ž‚³‚ê‚Ü‚·B)

  ’ˆÓ: –¾‚ç‚©‚ɁA‚ ‚È‚½‚Í“ü‚Á‚Ä—ˆ‚éƒpƒPƒbƒg‚ɑ΂µ‚ЧŒä‚Í‚Å‚«‚Ü‚¹‚ñB‚ 
  ‚È‚½‚ÍŽ©g‚Ì Linux box ‚ð‹Ž‚Á‚Ä‚¢‚­ƒpƒPƒbƒg‚Ì—Dæ‡ˆÊ‚¾‚¯‚𐧌ä‚Å‚«‚Ü
  ‚·B‘¼‚Ì•û–@‚Å—Dæ‡ˆÊ‚ð‚â‚è‚­‚è‚·‚é‚È‚çA RSVP ‚̂悤‚ȃvƒƒgƒRƒ‹‚ª•K
  —v‚Å‚·B(‚±‚ê‚ÉŠÖ‚µ‚Ä‚ÍŽ„‚͉½‚à’m‚ç‚È‚¢‚̂ŁAŽ„‚É‚Í•·‚©‚È‚¢‚ʼnº‚³‚¢B)

  Å‚àˆê”Ê“I‚ÈŽg—p•û–@‚Í telnet ‚Æ ftp ‚̃Rƒ“ƒgƒ[ƒ‹ƒRƒlƒNƒVƒ‡ƒ“‚É
  "Minimum Delay" ‚ðÝ’肵A FTP ƒf[ƒ^‚É "Maximum Throughput" ‚ðÝ’è‚·
  ‚é‚à‚Ì‚Å‚·BˆÈ‰º‚̂悤‚É‚È‚è‚Ü‚·:

       ipchains -A output -p tcp -d 0.0.0.0/0 telnet -t 0x01 0x10
       ipchains -A output -p tcp -d 0.0.0.0/0 ftp -t 0x01 0x10
       ipchains -A output -p tcp -s 0.0.0.0/0 ftp-data -t 0x01 0x08

  `-t' ƒtƒ‰ƒO‚Í 2‚‚̓Á•Ê‚ȃpƒ‰ƒ[ƒ^‚ðŽ‚¿A‚»‚ê‚ç‚Í16i‚ÅŽw’肵‚Ü‚·B
  ‚»‚ê‚ç‚ÍTOS ƒrƒbƒg‚ð•¡ŽG‚É‚¢‚¶‚­‚è‰ñ‚µ‚Ü‚·: Å‰‚̃}ƒXƒN‚̓pƒPƒbƒg‚ÌŒ»
  Ý‚Ì TOS ‚É AND (˜_—Ï)‚³‚ê‚Ü‚·B 2”Ԗڂ̃}ƒXƒN‚Í‚»‚ê‚ɑ΂µ‚Ä XOR (”r
  ‘¼“I˜_—˜a)‚³‚ê‚Ü‚·B‚±‚ê‚ÅŒƒ‚µ‚­¬—‚·‚é‚Ì‚Å‚µ‚½‚çAˆÈ‰º‚̈ꗗ‚ðŽg‚Á
  ‚ĉº‚³‚¢:

       TOS –¼                  ’l              ˆê”Ê“I‚È—p“r

       Minimum Delay           0x01 0x10       ftp, telnet
       Maximum Throughput      0x01 0x08       ftp-data
       Maximum Reliability     0x01 0x04       snmp
       Minimum Cost            0x01 0x02       nntp

  Andi Kleen ‚͈ȉº‚̂悤‚ÉŽw“E‚µ‚Ä‚¢‚Ü‚·B (ŒãX‚ÉŽc‚·‚½‚ß‚É•\Œ»‚ð“î‚ç
  ‚©‚­‚µ‚Ä‚¢‚Ü‚·B)

       ‘½•ªATOS ƒrƒbƒg‚Ì‹c˜_‚ɂ‚¢‚ẮA ifconfig ‚Ì txqueuelen ƒp
       ƒ‰ƒ[ƒ^‚ÌŽQÆ‚ð’ljÁ‚·‚é‚Ì‚É•Ö—˜‚Å‚µ‚傤BƒfƒoƒCƒX‚̃Lƒ…[’·
       ‚̏‰Šú’l‚̓C[ƒTƒlƒbƒgƒJ[ƒh‚ׂ̈ɒ²®‚³‚êAƒ‚ƒfƒ€‚É‚¨‚¢‚Ä‚Í
       ‚»‚ê‚Í’·‚·‚¬‚āA (TOS‚É‘¥‚Á‚½ƒLƒ…[‚Ì) 3ƒoƒ“ƒh‚̃XƒPƒWƒ…[ƒ‰
       ‚ðì¬‚µA‚»‚ê‚ç‚Ì“­‚«‚Í”÷X‚½‚é‚à‚Ì‚Å‚·Bƒ‚ƒfƒ€‚âƒVƒ“ƒOƒ‹ b
       ƒ`ƒƒƒlƒ‹‚Ì ISDN Ú‘±‚É‚¨‚¢‚āA‚±‚Ì’l‚ð 4-10 ‚̊Ԃɐݒ肷‚é‚Ì
       ‚Í—Ç‚¢‚ÆŽv‚¢‚Ü‚·; ‘¾‚¢ƒfƒoƒCƒX‚È‚ç‚æ‚è’·‚¢ƒLƒ…[‚ª•K—v‚Å‚·B
       ‚±‚ê‚̓J[ƒlƒ‹ƒo[ƒWƒ‡ƒ“ 2.0 ‚Æ 2.1 ‚Ì–â‘è‚Å‚µ‚½‚ªA 2.1 ‚É
       ‚¨‚¢‚Ä‚»‚ê‚Í (ÅV‚Ì nettools ‚ð—p‚¢‚Ä) ifconfig ƒtƒ‰ƒO‚ʼnÂ
       ”\‚É‚È‚èA 2.0 ‚É‚¨‚¢‚Ă̓fƒoƒCƒXƒhƒ‰ƒCƒo‚̃\[ƒX‚Ƀpƒbƒ`‚ð
       “K—p‚µ‚ĉ”\‚É‚È‚è‚Ü‚·B

  ‚Å‚·‚̂ŁAƒ‚ƒfƒ€‚Å‚Ì PPP Ú‘±‚É‚¨‚¯‚é TOS ‘€ì‚̍őå‚̉¶Œb‚𓾂é‚ɂ́A
  ‚ ‚È‚½‚̃}ƒVƒ“‚Ì /etc/ppp/ip-up ƒXƒNƒŠƒvƒg“à‚Å `ifconfig $1
  txqueuelen' ‚ðŽÀs‚·‚邱‚Æ‚Å‚·B‚±‚ê‚ðŽg‚¤Û‚Ì’l‚̓‚ƒfƒ€‚Ì‘¬“x‚ƃ‚ƒfƒ€
  “à‚̃oƒbƒtƒ@‚Ì‘—ʂɈˑ¶‚µ‚Ü‚·; ˆÈ‰º‚É Andi ‚ÌŽ„‚Ö‚Ì•Ô“š‚ð‚»‚Ì‚Ü‚ÜÄ“x
  ŒfÚ‚µ‚Ü‚·:

       —^‚¦‚ç‚ꂽƒRƒ“ƒtƒBƒMƒ…ƒŒ[ƒVƒ‡ƒ“‚̍œK’l‚ÍŒoŒ±‚ª•K—v‚Å‚·B‚à
       ‚µƒ‹[ƒ^ã‚̃Lƒ…[‚ª’Z‚·‚¬‚é‚ƁAƒpƒPƒbƒg‚ðŽæ‚肱‚Ú‚µ‚Ä‚µ‚Ü‚¢
       ‚Ü‚·B‚»‚µ‚Ėܘ_ TOS ‚̏‘‚«Š·‚¦‚à‚È‚­Œø‰Ê‚𓾂邱‚Æ‚É‚È‚èA
       ’P‚É TOS ‚̏‘‚«Š·‚¦‚Í”ñ‹¦—Í“I‚ȃvƒƒOƒ‰ƒ€‚ÉŒø‰Ê‚ð‚à‚½‚炵‚Ü
       ‚·B (‚µ‚©‚µ‘S‚Ä‚Ì•W€“I‚È Linux ƒVƒXƒeƒ€ƒvƒƒOƒ‰ƒ€‚Í‹¦—Í“I
       ‚Å‚·B)

  4.1.5.4.  ƒpƒPƒbƒg‚̃}[ƒLƒ“ƒO

  ‚±‚ê‚Í Alexey Kuznetsov ‚É‚æ‚éV‚½‚È"‚•iŽ¿’ʐM"‚ÌŽÀ‘•‚É‚æ‚Á‚āA•¡ŽG‚Å
  ‹­—Í‚È‘ŠŒÝì—p‚ð—LŒø‚É‚µ‚Ü‚·B 2.1 ƒVƒŠ[ƒYƒJ[ƒlƒ‹ˆÈ~‚Ìmarkƒx[ƒX‚Ì
  ƒtƒHƒ[ƒfƒBƒ“ƒO‚Æ“¯—l‚ɗǍD‚Å‚·BX‚È‚éƒjƒ…[ƒX‚Æ‚µ‚Ä‚Í‚±‚ꂪŽg‚¦‚é‚æ
  ‚¤‚É‚È‚Á‚½‚±‚Æ‚Å‚·B‚±‚̃IƒvƒVƒ‡ƒ“‚Í 2.0 ƒJ[ƒlƒ‹ƒVƒŠ[ƒY‚Å‚Í‘S‚­–³Ž‹
  ‚³‚ê‚Ü‚·B

  (–ó’: Quality of Service ‚́A QoS ‚Æ—ª‚³‚êAƒlƒbƒgƒ[ƒN—¬—ʐ§ŒÀ‚ðŽw
  ‚µ‚Ü‚·B‚±‚ê‚̓J[ƒlƒ‹‚̃Rƒ“ƒtƒBƒMƒ…ƒŒ[ƒVƒ‡ƒ“ƒXƒCƒbƒ`‚É
  CONFIG_NET_QOS ‚Æ‚µ‚Ä‘¶Ý‚µ‚Ü‚·B)

  4.1.5.5.  ƒ`ƒFƒCƒ“‚Ì‘€ì

  ipchains ‚Ì‚Æ‚Ä‚à—LŒø‚È“Á’¥‚́Aƒ`ƒFƒCƒ“’†‚ÌŠÖ˜A‚·‚郋[ƒ‹‚ðƒOƒ‹[ƒv‰»
  ‚Å‚«‚邱‚Æ‚Å‚·B‚¨–]‚݂̃`ƒFƒCƒ“‚͉½‚Å‚àŒÄ‚яo‚¹‚Ü‚·‚ªA‘g‚ݍž‚ݍςÝ
  ƒ`ƒFƒCƒ“ (input, output ‚Æ forward) ‚âƒ^[ƒQƒbƒg (MASQ, REDIRECT,
  ACCEPT, DENY, REJECT ˆ½‚Í RETURN) ‚ð‰ó‚³‚È‚¢ˆ×‚ɁA\•ª’·‚¢–¼‘O‚ðŽg‚Á‚Ä
  ‰º‚³‚¢B«—ˆ‚ÌŠg’£‚É”õ‚¦‚āAƒ‰ƒxƒ‹–¼‚Ì‘S•”‚ɑ啶Žš‚ðŽg‚í‚È‚¢‚±‚Æ‚ð‚¨Š©
  ‚ß‚µ‚Ü‚·Bƒ`ƒFƒCƒ“‚Ì–¼‘O‚͍őå 8•¶Žš‚Ü‚ÅŽg‚¦‚Ü‚·B

  4.1.5.6.  V‚µ‚¢ƒ`ƒFƒCƒ“‚ðì‚é

  V‚µ‚¢ƒ`ƒFƒCƒ“‚ðì‚è‚Ü‚µ‚傤BŽ„‚Í‚Æ‚Á‚Ä‚à‘n‘¢—Í‚É•x‚ñ‚¾–ì˜Y‚Ȃ̂ŁA‚»
  ‚ê‚ð test ‚Æ–¼•t‚¯‚Ü‚·B

       # ipchains -N test
       #

  ‚±‚ê‚ÍŠÈ’P‚Å‚·B‚³‚āA‚ ‚È‚½‚Í‚±‚ê‚܂ŏڍׂɏq‚ׂĂ«‚½‚悤‚ɁA‚±‚ê‚Ƀ‹
  [ƒ‹‚ð“ü‚ê‚邱‚Æ‚ª‚Å‚«‚Ü‚·B

  4.1.5.7.  ƒ`ƒFƒCƒ“‚ðíœ‚·‚é

  ƒ`ƒFƒCƒ“‚ðíœ‚·‚é‚Ì‚à“¯—l‚ÉŠÈ’P‚Å‚·B

       # ipchains -X test
       #

  ‚È‚º `-X' ‚©‚Á‚Ä?  ‚¤[‚ñA‚æ‚¢•¶Žš‚ª‘S‚ÄŽæ‚ç‚ê‚Ä‚µ‚Ü‚Á‚½‚Ì‚Å‚·B

  ƒ`ƒFƒCƒ“‚ðíœ‚·‚é‚É‚Í 2‚‚̐§ŒÀ‚ª‚ ‚è‚Ü‚·: ‚»‚̃`ƒFƒCƒ“‚Í‹ó‚Å‚ ‚é•K—v
  ‚ª‚ ‚è(Œãq‚Ì``ƒ`ƒFƒCƒ“‚ð‹ó‚É‚·‚é''‚ðŒ©‚Ä‰º‚³‚¢)A‚µ‚©‚àAŒˆ‚µ‚Ăǂ̃‹
  [ƒ‹‚̃^[ƒQƒbƒg‚É‚à‚È‚Á‚Ä‚¢‚È‚¢‚±‚Æ‚Å‚·B‘g‚ݍž‚ÝÏ‚Ý‚Ì 3‚‚̃`ƒFƒCƒ“
  ‚Í‚Ç‚ê‚àíœ‚Å‚«‚Ü‚¹‚ñB

  4.1.5.8.  ƒ`ƒFƒCƒ“‚ð‹ó‚É‚·‚é

  ƒ`ƒFƒCƒ“‚©‚ç‘S‚Ẵ‹[ƒ‹‚ðŽæ‚è‹Ž‚è‹ó‚É‚·‚é‚Ì‚ÍŠÈ’P‚ŁA`-F' ƒRƒ}ƒ“ƒh‚ð
  Žg‚¢‚Ü‚·B

               # ipchains -F forward
               #

  ‚à‚µAƒ`ƒFƒCƒ“–¼‚ðŽw’肵‚È‚¯‚ê‚΁A‘S‚Ẵ`ƒFƒCƒ“‚ð‹ó‚É‚µ‚Ü‚·B

  4.1.5.9.  ƒ`ƒFƒCƒ“‚Ì“à—e‚ðƒŠƒXƒgƒAƒbƒv‚·‚é

  ƒ`ƒFƒCƒ“’†‚Ì‘S‚Ẵ‹[ƒ‹‚ðƒŠƒXƒgƒAƒbƒv‚·‚é‚ɂ́A`-L' ƒRƒ}ƒ“ƒh‚ðŽg‚¢‚Ü
  ‚·B

  # ipchains -L input
  Chain input (refcnt = 1): (policy ACCEPT)
  target     prot opt    source                destination           ports
  ACCEPT     icmp -----  anywhere              anywhere              any
  # ipchains -L test
  Chain test (refcnt = 0):
  target     prot opt    source                destination           ports
  DENY       icmp -----  localnet/24           anywhere              any
  #

  test ‚É•\Ž¦‚³‚ê‚Ä‚¢‚é `refcnt' ‚́Atest ‚ðƒ^[ƒQƒbƒg‚ÉŽw’肵‚Ä‚¢‚郋[
  ƒ‹‚̐”‚Å‚·B‚±‚̐”‚ª 0 ‚Å‚È‚¢‚Æ(‚©‚ƒ`ƒFƒCƒ“‚ª‹ó‚Å‚ ‚邱‚Æ)A‚»‚̃`ƒF
  ƒCƒ“‚ðíœ‚·‚邱‚Æ‚Í‚Å‚«‚Ü‚¹‚ñB

  ‚à‚µAƒ`ƒFƒCƒ“–¼‚ðŽw’肵‚È‚¯‚ê‚΁A‹ó‚Ì‚àŠÜ‚ß‚Ä‘S‚Ẵ`ƒFƒCƒ“‚ɂ‚¢‚ăŠ
  ƒXƒgƒAƒbƒv‚³‚ê‚Ü‚·B

  `-L' ‚É‚Í 3‚‚̃IƒvƒVƒ‡ƒ“‚ª‚ ‚è‚Ü‚·B (‘å’ï‚̐lX‚Í DNS ‚ðŽg‚Á‚Ä‚¢‚Ü‚·
  ‚ª) DNS ‚ª“KØ‚ɐݒ肳‚ê‚Ä‚¢‚È‚¢ê‡‚â DNS ‚Ì—v‹‚ðƒtƒBƒ‹ƒ^[ƒAƒEƒg‚µ
  ‚Ä‚¢‚éê‡‚́A ipchains ‚ª IP ƒAƒhƒŒƒX‚𒲂ׂ悤‚Æ‚·‚é‚Æ‚«‚É’·‚­‘Ò‚½‚³
  ‚ê‚Ü‚·B‚»‚ê‚ð–h‚®‚Ì‚É `-n' (”’l)ƒIƒvƒVƒ‡ƒ“‚Í‚Æ‚Ä‚à—LŒø‚Å‚·B‚±‚̃Iƒv
  ƒVƒ‡ƒ“‚Í TCP ‚â UDP ƒ|[ƒg‚ɂ‚¢‚Ä‚à–¼‘O‚Å‚Í‚È‚­”ԍ†‚Å•\Ž¦‚µ‚Ü‚·B

  `-v' ƒIƒvƒVƒ‡ƒ“‚̓‹[ƒ‹‚̏ڍׂð‘S‚āA—Ⴆ‚΁AƒpƒPƒbƒg‚âƒoƒCƒg‚̃JƒEƒ“
  ƒ^[ATOS ƒ}ƒXƒNAƒCƒ“ƒ^[ƒtƒFƒCƒXA‚»‚µ‚ăpƒPƒbƒgƒ}[ƒN‚ð•\Ž¦‚µ‚Ü‚·B
  ‚±‚̃IƒvƒVƒ‡ƒ“‚ðŽw’肵‚È‚¯‚ê‚΁A‚±‚ê‚ç‚Ì’l‚͏ȗª‚³‚ê‚Ü‚·B

       # ipchains -v -L input
       Chain input (refcnt = 1): (policy ACCEPT)
        pkts bytes target     prot opt   tosa tosx  ifname    mark        source                destination           ports
          10   840 ACCEPT     icmp ----- 0xFF 0x00  lo                    anywhere              anywhere              any

  ’‹L‚Æ‚µ‚āAƒpƒPƒbƒg‚ƃoƒCƒg‚̃JƒEƒ“ƒ^[‚́A1000, 1,000,000 ‚¨‚æ‚Ñ
  1,000,000,000 ‚ðA‚»‚ꂼ‚ê `K', `M' ‚¨‚æ‚Ñ `G' ‚̐ڔöŽ«‚ðŽg‚Á‚Ä•\Ž¦‚µ
  ‚Ü‚·B `-x' (Šg’£”’l)ƒIƒvƒVƒ‡ƒ“‚ðŽg‚¤‚ƁA’l‚Ì‘å‚«‚³‚É‚©‚©‚í‚炸Š®‘S‚È
  ”’l‚𓯗l‚É•\Ž¦‚µ‚Ü‚·B

  4.1.5.10.  ƒJƒEƒ“ƒ^[‚ð(ƒ[ƒ‚É)ƒŠƒZƒbƒg‚·‚é

  ƒJƒEƒ“ƒ^[‚ðƒŠƒZƒbƒg‚Å‚«‚é‚Æ•Ö—˜‚Å‚·B‚±‚ê‚Í `-Z' (ƒJƒEƒ“ƒ^‚ðƒ[ƒ‚É‚·
  ‚é) ƒIƒvƒVƒ‡ƒ“‚Å‚Å‚«‚Ü‚·B—Ⴆ‚Î:

  # ipchains -v -L input
  Chain input (refcnt = 1): (policy ACCEPT)
   pkts bytes target     prot opt   tosa tosx  ifname    mark        source                destination           ports
     10   840 ACCEPT     icmp ----- 0xFF 0x00  lo                    anywhere              anywhere              any
  # ipchains -Z input
  # ipchains -v -L input
  Chain input (refcnt = 1): (policy ACCEPT)
   pkts bytes target     prot opt   tosa tosx  ifname    mark        source                destination           ports
      0     0 ACCEPT     icmp ----- 0xFF 0x00  lo                    anywhere              anywhere              any
  #

  ‚±‚Ì‚â‚è•û‚ł́AƒŠƒZƒbƒg‚·‚é’¼‘O‚̃JƒEƒ“ƒ^’l‚ð’m‚é•K—v‚ª‚ ‚é‚Æ‚«‚É–â‘è
  ‚É‚È‚è‚Ü‚·Bã‹L‚Ì•û–@‚ł́A`-L' ‚©‚ç `-Z' ƒRƒ}ƒ“ƒh‚Ü‚Å‚ÌŠÔ‚É‚¢‚­‚‚©
  ‚̃pƒPƒbƒg‚ª’ʉ߂·‚é‚©‚à‚µ‚ê‚Ü‚¹‚ñB‚»‚Ì‚½‚߁AƒJƒEƒ“ƒ^[‚ð“Ç‚Þ‚Æ“¯Žž‚É
  ƒŠƒZƒbƒg‚·‚é‚ɂ́A`-L' ‚Æ `-Z' ‚𓯎ž‚ÉŽg‚¢‚Ü‚·BŽc”O‚È‚ª‚çA‚ ‚È‚½‚ª
  ‚±‚ê‚ðŽg‚¤‚ƁA’Pˆê‚̃`ƒFƒCƒ“‚𑀍ì‚Å‚«‚Ü‚¹‚ñ: ˆê’U‘S‚Ẵ`ƒFƒCƒ“‚ðƒŠƒX
  ƒgƒAƒbƒv‚µ‚ă[ƒ‚É‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B

       # ipchains -L -v -Z
       Chain input (policy ACCEPT):
        pkts bytes target     prot opt   tosa tosx  ifname    mark        source                destination           ports
          10   840 ACCEPT     icmp ----- 0xFF 0x00  lo                    anywhere              anywhere              any

       Chain forward (refcnt = 1): (policy ACCEPT)
       Chain output (refcnt = 1): (policy ACCEPT)
       Chain test (refcnt = 0):
           0     0 DENY       icmp ----- 0xFF 0x00  ppp0                  localnet/24           anywhere              any
       # ipchains -L -v
       Chain input (policy ACCEPT):
        pkts bytes target     prot opt   tosa tosx  ifname    mark        source                destination           ports
          10   840 ACCEPT     icmp ----- 0xFF 0x00  lo                    anywhere              anywhere              any

       Chain forward (refcnt = 1): (policy ACCEPT)
       Chain output (refcnt = 1): (policy ACCEPT)
       Chain test (refcnt = 0):
           0     0 DENY       icmp ----- 0xFF 0x00  ppp0                  localnet/24           anywhere              any
       #

  4.1.5.11.  ƒ|ƒŠƒV[‚ðÝ’è‚·‚é

  ˆÈ‘O‚ɃpƒPƒbƒg‚ª‚ǂ̂悤‚Ƀ`ƒFƒCƒ“‚ð’ʂ蔲‚¯‚é‚Ì‚©‚ðA‘Oq‚Ì ``ƒ^[
  ƒQƒbƒg‚ÌŽw’è''‚ɂĘ_‚¶‚½‚Æ‚«AƒpƒPƒbƒg‚ª‘g‚ݍž‚ݍς݃`ƒFƒCƒ“‚̏I‚í‚è‚É
  ’B‚µ‚½Žž‚ɉ½‚ª‹N‚«‚é‚Ì‚©‚ð‘å‘̏q‚ׂ܂µ‚½B‚±‚̏ꍇAƒ`ƒFƒCƒ“‚̃|ƒŠƒV[
  ‚ª‚»‚̃pƒPƒbƒg‚̉^–½‚ðŒˆ’è‚µ‚Ü‚·B‘g‚ݍž‚ݍς݃`ƒFƒCƒ“(input, output
  ‚¨‚æ‚Ñ forward)‚¾‚¯‚ªƒ|ƒŠƒV[‚ðŽ‚Á‚Ä‚¢‚Ü‚·B‚È‚º‚È‚çAƒpƒPƒbƒg‚ªƒ†[
  ƒU’è‹`ƒ`ƒFƒCƒ“‚̏I‚í‚è‚܂ʼnº‚è—Ž‚¿‚é‚ƁA‘O‚̃`ƒFƒCƒ“‚É–ß‚Á‚čs‚­‚©‚ç‚Å
  ‚·B

  ƒ|ƒŠƒV[‚͍ŏ‰‚©‚ç 4‚‚܂ł̓Á•Ê‚ȃ^[ƒQƒbƒg‚Ì‚¢‚¸‚ê‚©‚Å‚·: ACCEPT,
  DENY, REJECT ˆ½‚Í MASQ ‚Å‚·B MASQ ‚Í `forward' ƒ`ƒFƒCƒ“‚É‚¨‚¢‚Ä‚Ì‚Ý—L
  Œø‚Å‚·B

  ‚Ü‚½Ad—v‚È’ˆÓ“_‚Æ‚µ‚āA‘g‚ݍž‚ݍς݃`ƒFƒCƒ“’†‚̃‹[ƒ‹‚É‚¨‚¯‚é
  RETURN ƒ^[ƒQƒbƒg‚́AƒpƒPƒbƒg‚ªƒ‹[ƒ‹‚Ƀ}ƒbƒ`‚µ‚½Žž‚É–¾Ž¦“I‚Ƀ`ƒFƒCƒ“
  ‚̃|ƒŠƒV[‚ðƒ^[ƒQƒbƒg‚É‚·‚邽‚ß•Ö—˜‚Å‚·B

  4.1.6.  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚Ì‘€ì

  IP ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚ð”÷’²®‚·‚éŠô‚‚©‚̃pƒ‰ƒ[ƒ^‚ª‚ ‚è‚Ü‚·B‚»‚ê‚ç
  ‚Í ipchains ‚É‘g‚ݍž‚Ü‚ê‚Ä‚¢‚Ü‚·B‰½ŒÌ‚È‚çA‚»‚Ì‹@”\‚ׂ̈ɕʂ̃c[ƒ‹‚ð
  ‘‚­‚Ì‚Í—Ç‚­‚È‚¢‚©‚ç‚Å‚·B (‚µ‚©‚µ‚±‚ê‚͕ύX‚³‚ê‚é‚Å‚µ‚傤B)

  IP ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚̃Rƒ}ƒ“ƒh‚Í `-M' ‚ŁA¡ƒ}ƒXƒJƒŒ[ƒh‚³‚ê‚Ä‚¢‚éƒR
  ƒlƒNƒVƒ‡ƒ“‚ðƒŠƒXƒgƒAƒbƒv‚·‚邽‚ß‚É  `-L' ‚Æ‘g‚ݍ‡‚킹‚ç‚êAƒ}ƒXƒJƒŒ[
  ƒfƒBƒ“ƒO‚Ì’l‚𒲐®‚·‚邽‚ß‚É `-S' ‚Æ‘g‚ݍ‡‚킹‚ç‚ê‚Ü‚·B

  `-L' ƒRƒ}ƒ“ƒh‚Í `-n' (ƒzƒXƒg–¼‚âƒ|[ƒg–¼‚Å‚Í‚È‚­A”’l‚ð•\Ž¦‚µ‚Ü‚·B)
  ‚©A‚Ü‚½‚Í `-v' (‚Ü‚³‚É‚ ‚È‚½‚ª’ˆÓ‚·‚éAƒ}ƒXƒJƒŒ[ƒhƒRƒlƒNƒVƒ‡ƒ“‚̃V
  [ƒPƒ“ƒX”ԍ†‚̏ڍׂð•\Ž¦‚µ‚Ü‚·B)‚𔺂¢‚Ü‚·B

  `-S' ƒRƒ}ƒ“ƒh‚͈ȉº‚Ì 3‚‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’肵‚Ü‚·A‚»‚ê‚ç‚Í•b’PˆÊ
  ‚Å‚·: TCP ƒZƒbƒVƒ‡ƒ“A FIN ƒpƒPƒbƒgŒã‚Ì TCP ƒZƒbƒVƒ‡ƒ“‚ƁA UDP ƒpƒPƒb
  ƒg‚Å‚·B‚à‚µ‚»‚ê‚ç‚Ì’l‚̈ê‚‚ð•ÏX‚µ‚½‚­‚È‚¢‚È‚ç‚΁A’Pƒ‚É `0' ‚ª—^‚¦
  ‚ç‚ê‚Ü‚·B

  Šù’è’l‚Í `/usr/src/linux/include/net/ip_masq.h' ‚ɃŠƒXƒgƒAƒbƒv‚³‚ê‚Ä‚¨
  ‚èA Œ»Ý‚Í‚»‚ꂼ‚ê 15 •bA 2•b ‚»‚µ‚Ä 5•b‚Å‚·B

  •ÏX‚³‚ê‚éÅ‚àˆê”Ê“I‚È’l‚́A ftp ‚ׂ̈ɕύX‚·‚éÅ‰‚Ì’l‚Å‚·B (Œãq
  ‚Ì``FTP ‚̈«–²''‚ðŽQÆ‚µ‚ĉº‚³‚¢B)

  ``ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’è‚Å‚«‚Ü‚¹‚ñ!''‚É—ñ‹“‚µ‚½ƒ^ƒC
  ƒ€ƒAƒEƒg‚̐ݒè‚ÉŠÖ‚·‚é–â‘è‚É’ˆÓ‚µ‚ĉº‚³‚¢B

  4.1.7.  ƒpƒPƒbƒg‚ðƒ`ƒFƒbƒN‚·‚é

  Žž‚É‚ ‚È‚½‚̃}ƒVƒ“‚Ɉê’è‚̃pƒPƒbƒg‚ª“ü‚荞‚ލۂɉ½‚ª‹N‚±‚é‚Ì‚©‚ðŒ©‚½‚¢
  ‚ÆŽv‚¤‚±‚Æ‚Å‚µ‚傤B‚ ‚È‚½‚̃tƒ@ƒCƒAƒEƒH[ƒ‹ƒ`ƒFƒCƒ“‚ðƒfƒoƒbƒO‚·‚鎞‚È
  ‚ǁB ipchains ‚Í‚±‚ê‚ð—LŒø‚É‚³‚¹‚é `-C' ƒRƒ}ƒ“ƒh‚ð‘•”õ‚µ‚Ä‚¢‚Ü‚·B‚»‚Ì
  ÛAƒJ[ƒlƒ‹‚ª–{“–‚̃pƒPƒbƒg‚ðf’f‚·‚é‚Ì‚É—p‚¢‚郋[ƒ`ƒ“‚Ɛ³Šm‚É“¯‚¶ƒ‹
  [ƒ`ƒ“‚ð—p‚¢‚Ü‚·B

  ƒpƒPƒbƒg‚ðƒeƒXƒg‚·‚éƒ`ƒFƒCƒ“‚́Aˆø” `-C' ‚ÌŒã‚ɃpƒPƒbƒg‚̃eƒXƒg‚ð‚·‚é
  ƒ`ƒFƒCƒ“‚Ì–¼‘O‚ðŽw’肵‚Ü‚·BƒJ[ƒlƒ‹‚͏í‚É input, output ‚Ü‚½‚Í
  forward ƒ`ƒFƒCƒ“A‚ƈڂÁ‚čs‚«‚Ü‚·‚ªAƒeƒXƒg‚͂ǂ̃`ƒFƒCƒ“‚©‚ç‚Å‚àŽn‚ß
  ‚邱‚Æ‚ª‚Å‚«‚Ü‚·B

  `packet' ‚̏ڍׂ́Aƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ðŽw’è‚·‚éˆ×‚É—p‚¢‚ç‚ê‚é‚Ì‚Æ
  “¯‚¶‘‚«•û‚ð—p‚¢‚ÄŽw’肵‚Ü‚·B“Á‚ɁAƒvƒƒgƒRƒ‹ (`-p') Aƒ\[ƒXƒAƒhƒŒƒX
  (`-s') Aˆ¶æƒAƒhƒŒƒX (`-d') ‚ƃCƒ“ƒ^[ƒtƒF[ƒX (`-i')‚Í•K{‚Å‚·B‚à‚µ
  ƒvƒƒgƒRƒ‹‚ª TCP –”‚Í UDP ‚È‚çA’Pˆê‚̃\[ƒX‚Æ’Pˆê‚̈¶æƒ|[ƒg‚ªŽw’肳
  ‚ê‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñ‚µA ICMP ƒvƒƒgƒRƒ‹‚É‚¨‚¢‚Ä‚Í ICMP ƒ^ƒCƒv‚ªŽw’肳
  ‚ê‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB (ƒtƒ‰ƒOƒƒ“ƒg‚ðŽ¦‚· `-f' ƒtƒ‰ƒO‚ðŽw’肵‚Ä‚¢‚È‚¯
  ‚ê‚΁BŽw’肵‚Ä‚¢‚éê‡‚Í‚±‚ê‚ç‚̃IƒvƒVƒ‡ƒ“‚Í•s³‚Å‚·B)

  ƒvƒƒgƒRƒ‹‚ª TCP ‚È‚ç‚Î (‚»‚µ‚Ä `-f' ƒtƒ‰ƒO‚ª‚µ‚Ä‚¢‚³‚ê‚Ä‚¢‚È‚¯‚ê‚Î)
  AƒeƒXƒgƒpƒPƒbƒg‚É SYN ƒrƒbƒg‚ðƒZƒbƒg‚·‚é‚Ì‚É `-y' ƒtƒ‰ƒO‚ðŽw’肵‚Ä‚à
  ‚æ‚¢‚Å‚µ‚傤B

  ˆÈ‰º‚Í 192.168.1.1 ‚Ì60000 ƒ|[ƒg‚©‚ç 192.168.1.2 ‚Ì www ƒ|[ƒg‚ցA
  eth0 ƒCƒ“ƒ^[ƒtƒF[ƒX‚É“ü‚èA `input' ƒ`ƒFƒCƒ“‚É“ž’B‚·‚é TCP SYN ƒp
  ƒPƒbƒg‚ðƒeƒXƒg‚·‚é—á‚Å‚·B (‚±‚ê‚Í“TŒ^“I‚È WWW ‚̐ڑ±ŠJŽn‚Ì“ü—ˆ‚Å‚·)

       # ipchains -C input -p tcp -y -i eth0 -s 192.168.1.1 60000 -d 192.168.1.2 www
       packet accepted
       #

  4.1.8.  ˆê“x‚É•¡”‚̃‹[ƒ‹‚Ɖ½‚ª‹N‚±‚é‚Ì‚©‚ðŒ©‚é

  Žž‚É’Pˆê‚̃Rƒ}ƒ“ƒhƒ‰ƒCƒ“‚ª•¡”‚̃‹[ƒ‹‚ɉe‹¿‚³‚¹‚邱‚Æ‚ª‚Å‚«‚Ü‚·B‚±‚ê
  ‚É‚Í“ñ‚‚̕û–@‚ª‚ ‚è‚Ü‚·BÅ‰‚ɁA(DNS ‚ð—p‚¢‚Ä)•¡”‚Ì IP ƒAƒhƒŒƒX‚ɉð
  Œˆ‚·‚éƒzƒXƒg–¼‚ðŽw’è‚·‚é‚ƁA ipchains ‚Í‚ ‚È‚½‚ªŠeX‚̃AƒhƒŒƒX‚Ì‘g‚ݍ‡
  ‚킹‚ɑ΂µ‚Ä•¡”‚̃Rƒ}ƒ“ƒh‚𔭍s‚µ‚½‚Ì‚Æ“¯‚¶‚悤‚ɐU‚é•‘‚¢‚Ü‚·B

  ‚Å‚·‚©‚çA‚à‚µƒzƒXƒg–¼ `www.foo.com' ‚ª 3‚Â‚Ì IP ƒAƒhƒŒƒX‚É‰ðŒˆ‚µAƒz
  ƒXƒg–¼ `www.bar.com' ‚ª 2‚Â‚Ì IP ƒAƒhƒŒƒX‚É‰ðŒˆ‚·‚éê‡AƒRƒ}ƒ“ƒh
  `ipchains -A input -j reject -s www.bar.com -d www.foo.com' ‚́A input
  ƒ`ƒFƒCƒ“‚É 6‚‚̃‹[ƒ‹‚ð’ljÁ‚·‚邱‚Æ‚Æ‚È‚è‚Ü‚·B

  ipchains ‚É•¡”‚Ì“®ì‚ðs‚킹‚é‚à‚¤ˆê‚‚̕û–@‚́A‘o•ûŒüƒtƒ‰ƒO(`-b') ‚ð
  —p‚¢‚Ü‚·B‚±‚̃tƒ‰ƒO‚́A ipchains ‚ɃRƒ}ƒ“ƒh‚ð 2‰ñ“ü—Í‚³‚¹‚½‚Ì‚Æ“¯—l‚É
  U‚é•‘‚킹‚Ü‚·B‚»‚ÌÛ‚Ì 2‰ñ–ڂ̃Rƒ}ƒ“ƒh‚Í `-s' ‚Æ `-d' ‚̈ø”‚𔽓]‚³
  ‚¹‚½‚±‚Æ‚É‚È‚è‚Ü‚·B‚Å‚·‚̂ŁA 192.168.1.1 ‚É‘ŠŒÝ‚ɃtƒHƒ[ƒh‚³‚¹‚邱
  ‚Æ‚ð‹Ö‚¶‚³‚¹‚é‚ɂ́AˆÈ‰º‚̂悤‚É‚Å‚«‚Ü‚·:

       # ipchains -b -A forward -j reject -s 192.168.1.1
       #

  ŒÂl“I‚ɂ́A `-b' ƒIƒvƒVƒ‡ƒ“‚͍D‚«‚Å‚È‚¢‚Å‚·; ‚à‚Á‚Æ•Ö—˜‚É‚µ‚½‚¢‚È‚çA
  Œãq‚Ì``ipchains-save ‚ðŽg‚¤''‚ðŒ©‚Ä‰º‚³‚¢B

  -b ƒIƒvƒVƒ‡ƒ“‚Í ‘}“ü (`-I') A íœ (`-D') (‚Å‚àƒ‹[ƒ‹ƒiƒ“ƒo[‚ÌŠg’£‚Å
  ‚Í‚ ‚è‚Ü‚¹‚ñB) A’ljÁ (`-A') ‚ƃ`ƒFƒbƒN (`-C') ƒRƒ}ƒ“ƒh‚Æ‹¤‚ÉŽg‚¦‚Ü
  ‚·B

  ‚à‚¤ˆê‚‚֗̕˜‚ȃtƒ‰ƒO‚É `-v' (ç’·‚È) ‚ª‚ ‚è‚Ü‚·B‚±‚ê‚Í ipchains ‚ª
  ‚ ‚È‚½‚̃Rƒ}ƒ“ƒh‚É‚æ‚Á‚ĉ½‚ð‚µ‚Ä‚¢‚é‚Ì‚©‚𐳊m‚ɃvƒŠƒ“ƒgƒAƒEƒg‚µ‚Ü‚·B
  ‚ ‚È‚½‚ª•¡”‚̃‹[ƒ‹‚ðƒRƒ}ƒ“ƒh‚ðŽ{‚µ‚Ä‚¢‚é‚Ì‚È‚çA‚±‚ꂪ•Ö—˜‚Å‚·B—Ⴆ
  ‚΁AˆÈ‰º‚Í 192.168.1.1 ‚Æ 192.168.1.2 ‚Ƃ̊ԂŃtƒ‰ƒOƒƒ“ƒg‚̐U‚é•‘‚¢‚ð
  ƒ`ƒFƒbƒN‚·‚é—á‚Å‚·B

  # ipchains -v -b -C input -p tcp -f -s 192.168.1.1 -d 192.168.1.2 -i lo
    tcp opt   ---f- tos 0xFF 0x00  via lo    192.168.1.1  -> 192.168.1.2    * ->   *
  packet accepted
    tcp opt   ---f- tos 0xFF 0x00  via lo    192.168.1.2  -> 192.168.1.1    * ->   *
  packet accepted
  #

  4.2.  ŽÀ—áW

  Ž„‚Ì PC ‚̓Cƒ“ƒ^[ƒlƒbƒg‚Öƒ_ƒCƒ„ƒ‹ƒAƒbƒv PPP Ú‘±‚³‚ê‚Ü‚·B (-i ppp0)
  Ž„‚̓_ƒCƒ„ƒ‹ƒAƒbƒv‚Ì“x–ˆ‚Ƀlƒbƒgƒjƒ…[ƒX (-p TCP -s
  news.virtual.net.au nntp) ‚ƃ[ƒ‹ (-p TCP -s mail.virtual.net.au
  pop-3) ‚ð PC ‚ÉŽæ‚荞‚Ý‚Ü‚·BŽ„‚Í Debian ‚Ì FTP ‚É‚æ‚é PC ‚̍XVì‹Æ‚ð
  ’èŠú“I‚ɍs‚¢‚Ü‚·B (-p TCP -y -s ftp.debian.org.au ftp-data) Ž„‚Í ISP
  ‚̃vƒƒLƒV‚ð‰î‚µ‚Ä web ‚ւ̃AƒNƒZƒX‚ðs‚¢‚Ü‚· (-p TCP -d
  proxy.virtual.net.au 8080) ‚ªA Dilbert ƒA[ƒJƒCƒ”ã‚Ì doubleclick.net
  ‚©‚ç‚̍Lƒoƒi[‚ðŒ™‚¢‚Ü‚·B (-p TCP -y -d 199.95.207.0/24 ‚Æ -p TCP
  -y -d 199.95.208.0/24)

  Ž„‚Í PC ‚ªƒIƒ“ƒ‰ƒCƒ“‚̍ۂɒN‚©‚ªŽ„‚Ì PC ‚ɑ΂µ‚Ä ftp ‚ðŽŽ‚Ý‚é‚±‚Æ‚ÉŠÖ
  ‚µ‚Ä‚Í‹C‚É‚µ‚Ü‚¹‚ñB (-p TCP -d $LOCALIP ftp) ‚¯‚ê‚Ç‚àAŠO•”‚Ì’N‚©‚ÉŽ„
  ‚Ì“à•”ƒlƒbƒgƒ[ƒN (-s 192.168.1.0/24) ‚Ì IP ƒAƒhƒŒƒX‚ð‹U‘•‚³‚ꂽ‚­‚ 
  ‚è‚Ü‚¹‚ñB‚±‚ê‚͒ʏíA IP ƒXƒv[ƒtƒBƒ“ƒO (–ó’: ‹U‘•) ‚ƌĂ΂êAƒo[
  ƒWƒ‡ƒ“ 2.1.x ˆÈ~‚̃J[ƒlƒ‹‚É‚Í‚±‚ê‚ð–h‚®—Ç‚¢•û–@‚ª‚ ‚è‚Ü‚·: ``IP ‹U‘•
  •ÛŒì(IP Spoof Protection)‚ðA‚ǂ̂悤‚ɐݒ肵‚½‚ç‚æ‚¢‚Å‚·‚©?''‚ðŽQÆ‚µ
  ‚ĉº‚³‚¢B

  ‚±‚̃ZƒbƒgƒAƒbƒv‚Í‚Æ‚Ä‚à’Pƒ‚ŁA‰½ŒÌ‚Ȃ獡Ž„‚Ì“à•”ƒlƒbƒgƒ[ƒNã‚É‚Í‘¼
  ‚Ƀ}ƒVƒ“‚ª‚È‚¢‚©‚ç‚Å‚·B

  Ž„‚Í‚ ‚ç‚ä‚郍[ƒJƒ‹ƒvƒƒZƒX(‚·‚È‚í‚¿AƒlƒbƒgƒXƒP[ƒvA lynx “™) ‚ð
  doubleclick.net ‚ɐڑ±‚³‚¹‚½‚­‚ ‚è‚Ü‚¹‚ñB

       # ipchains -A output -d 199.95.207.0/24 -j REJECT
       # ipchains -A output -d 199.95.208.0/24 -j REJECT
       #

  ‚³‚āAŽ„‚ÍŠO‚֏o‚čs‚­—lX‚ȃpƒPƒbƒg‚É—Dæ‡ˆÊ‚ðÝ’肵‚½‚¢‚Å‚·B (“ü‚Á
  ‚Ä—ˆ‚éƒpƒPƒbƒg‚ɑ΂µ‚Ä‚±‚ê‚ðs‚¤‘½‚­‚̃ƒŠƒbƒg‚Í‚ ‚è‚Ü‚¹‚ñB) ‚±‚ê‚ç‚Ì
  ƒ‹[ƒ‹‚ª‘½”‚ ‚é‚̂ŁAppp-out ‚Æ–¼•t‚¯‚½ƒ`ƒFƒCƒ“‚É‚»‚ê‚ç‘S‚Ä‚ð“ü‚ê‚邱
  ‚Ƃ͈Ӗ¡‚Ì‚ ‚邱‚Æ‚Å‚·B

       # ipchains -N ppp-out
       # ipchains -A output -i ppp0 -j ppp-out
       #

  web ‚̃gƒ‰ƒtƒBƒbƒN‚Æ telnet ‚֍ŏ¬’x‰„‚ðÝ’肵‚Ü‚·B

       # ipchains -A ppp-out -p TCP -d proxy.virtual.net.au 8080 -t 0x01 0x10
       # ipchains -A ppp-out -p TCP -d 0.0.0.0/0 telnet -t 0x01 0x10
       #

  ftp ƒf[ƒ^, nntp, pop-3 ‚É’áƒRƒXƒg‚ðÝ’肵‚Ü‚·:

       # ipchains -A ppp-out -p TCP -d 0.0.0.0/0 ftp-data -t 0x01 0x02
       # ipchains -A ppp-out -p TCP -d 0.0.0.0/0 nntp -t 0x01 0x02
       # ipchains -A ppp-out -p TCP -d 0.0.0.0/0 pop-3 -t 0x01 0x02
       #

  ppp0 ƒCƒ“ƒ^[ƒtƒF[ƒX‚É“ü‚Á‚Ä—ˆ‚éƒpƒPƒbƒg‚É‚ÍŠô‚‚©‚̐§ŒÀ‚ª‚ ‚è‚Ü‚·:
  `ppp-in' ‚Æ‚¢‚¤ƒ`ƒFƒCƒ“‚ðì‚è‚Ü‚µ‚傤:

       # ipchains -N ppp-in
       # ipchains -A input -i ppp0 -j ppp-in
       #

  ‚³‚āA ppp0 ‚É“ü‚Á‚Ä—ˆ‚éƒpƒPƒbƒg‚Í 192.168.1.* ‚̃\[ƒXƒAƒhƒŒƒX‚ðŽå’£
  ‚·‚é‚ׂ«‚Å‚Í‚ ‚è‚Ü‚¹‚ñB‚Å‚·‚©‚çA‰äX‚Í‚»‚ê‚ç‚ðƒƒO‚É‹L˜^‚µ‚Ĕےè
  (deny) ‚µ‚Ü‚·:

       # ipchains -A ppp-in -s 192.168.1.0/24 -l -j DENY
       #

  Ž„‚Í DNS ‚Ì UDP ƒpƒPƒbƒg (Ž„‚Í‘S‚Ä‚Ì—v‹‚ð 203.29.16.1 ‚Ö“]‘—‚·‚é
  ƒLƒƒƒbƒVƒ…ƒl[ƒ€ƒT[ƒo‚ð“®‚©‚µ‚Ä‚¢‚é‚̂ŁA‚»‚ê‚ç‚Ì—v‹‚©‚ç‚»‚Ì DNS ‚¾
  ‚¯‚ª•Ô“š‚·‚邱‚Æ‚ð—\‘ª‚µ‚Ü‚·B) ‚Æ “ü‚Á‚Ä—ˆ‚é ftp ‚Æ‹A‚Á‚Ä—ˆ‚é ftp-
  data (‚±‚ê‚ç‚Í1023”Ԉȏã‚̃|[ƒg‚Ì‚Ý‚ªŽg‚í‚êAŠŽ‚Â6000”Ô‹ß•Ó‚Ì X11 ƒ|
  [ƒg‚ðŽg‚¢‚Ü‚¹‚ñB) ‚Ì TCP ƒpƒPƒbƒg‚Ì‚Ý‚ð‹–‰Â‚µ‚Ü‚·B

       # ipchains -A ppp-in -p UDP -s 203.29.16.1 -d $LOCALIP dns -j ACCEPT
       # ipchains -A ppp-in -p TCP -s 0.0.0.0/0 ftp-data -d $LOCALIP 1024:5999 -j ACCEPT
       # ipchains -A ppp-in -p TCP -s 0.0.0.0/0 ftp-data -d $LOCALIP 6010: -j ACCEPT
       # ipchains -A ppp-in -p TCP -d $LOCALIP ftp -j ACCEPT
       #

  ‹A‚Á‚Ä‚­‚é TCP ‚Ì•Ô“šƒpƒPƒbƒg‚ð‹–‰Â‚µ‚Ü‚·B

       # ipchains -A ppp-in -p TCP ! -y -j ACCEPT
       #

  ÅŒã‚ɁAƒ[ƒJƒ‹‚ƃ[ƒJƒ‹“¯Žm‚̃pƒPƒbƒg‚Í OK ‚Å‚·:

       # ipchains -A input -i lo -j ACCEPT
       #

  ‚³‚āAŽ„‚Ì input ƒ`ƒFƒCƒ“‚É‚¨‚¯‚éŠù’èƒ|ƒŠƒV[‚Í DENY (”Û’è) ‚Å‚·‚̂ŁA
  ãq‚Ì‚à‚̈ȊO‚Í‘S‚Ä”jŠü‚µ‚Ü‚·:

       # ipchains -P input DENY
       #

  ’ˆÓ: Ž„‚Í‚±‚̏‡”ԂŃ`ƒFƒCƒ“‚ðƒZƒbƒgƒAƒbƒv‚µ‚Ü‚¹‚ñ‚Å‚µ‚½BƒZƒbƒgƒAƒbƒv
  ‚̍Œ†‚ɃpƒPƒbƒg‚ª“ü‚荞‚ñ‚Å—ˆ‚é‚©‚ç‚Å‚·BÅ‚àˆÀ‘S‚Ȃ͍̂ŏ‰‚É DENY ‚Ì
  ƒ|ƒŠƒV[‚ðÝ’è‚·‚邱‚Æ‚Å‚·B–ܘ_A‚ ‚È‚½‚̃‹[ƒ‹‚ªƒzƒXƒg–¼‚ð‰ðŒˆ‚·‚éˆ×
  ‚É DNS ‚ÌŽQÆ‚ð—v‹‚·‚é‚È‚çA–â‘肪”­¶‚·‚邱‚Æ‚Å‚µ‚傤B

  4.2.1.  ipchains-save ‚ðŽg‚¤

  ‚Ü‚³‚É‚ ‚È‚½‚Ì‚¨–]‚Ý’Ê‚è‚̃tƒ@ƒCƒAƒEƒH[ƒ‹ƒ`ƒFƒCƒ“‚ðƒZƒbƒgƒAƒbƒv‚µA‚»
  ‚µ‚ÄŽŸ‰ñ‚É‚â‚Á‚½‚±‚Æ‚ðŽv‚¢o‚»‚¤‚Æ‚·‚é‚̂͐h‚¢‚±‚Æ‚Å‚·B

  ‚»‚±‚ŁA¡ƒZƒbƒgƒAƒbƒv‚µ‚½‚ ‚È‚½‚̃`ƒFƒCƒ“‚ð“ǂ݁Aƒtƒ@ƒCƒ‹‚É•Û‘¶‚·‚éA
  ipchains-save ‚Æ‚¢‚¤ƒXƒNƒŠƒvƒg‚Å‚·B ipchains-restore ‚ª‰½‚ð‚·‚é‚©‚ÉŠÖ
  ‚µ‚Ä‚Í‚¿‚å‚Á‚Æ‘Ò‚Á‚Ăĉº‚³‚¢‚ˁB

  ipchains-save ‚Í’Pˆê‚̃`ƒFƒCƒ“–”‚Í (ƒ`ƒFƒCƒ“–¼‚ªŽw’肳‚ê‚È‚¯‚ê‚Î) ‘S‚Ä
  ‚̃`ƒFƒCƒ“‚ðƒZ[ƒu‚Å‚«‚Ü‚·BƒIƒvƒVƒ‡ƒ“‚Æ‚µ‚Ä‚Í `-v' ‚Ì‚Ý‚ª‹–‚³‚êA‚±‚ê
  ‚̓Z[ƒu‚³‚ꂽƒ‹[ƒ‹‚ð (•W€ƒGƒ‰[o—Í‚É) ƒvƒŠƒ“ƒg‚µ‚Ü‚·B input,
  output ‚»‚µ‚Ä forward ƒ`ƒFƒCƒ“‚̃|ƒŠƒV[‚à“¯—l‚ɃZ[ƒu‚³‚ê‚Ü‚·B

       # ipchains-save > my_firewall
       Saving `input'.
       Saving `output'.
       Saving `forward'.
       Saving `ppp-in'.
       Saving `ppp-out'.
       #

  4.2.2.  ipchains-restore ‚ðŽg‚¤

  ipchains-restore ‚Í ipchains-save ‚Å•Û‘¶‚³‚ꂽƒ`ƒFƒCƒ“‚𕜌³‚µ‚Ü‚·B‚±
  ‚ê‚Í 2‚‚̃IƒvƒVƒ‡ƒ“‚ðŽ‚¿“¾‚Ü‚·: `-v' ‚ÍŠeX‚̃‹[ƒ‹‚ª’ljÁ‚³‚ê‚é‚悤
  ‚Éà–¾‚µ‚Ü‚·B‚»‚µ‚Ä `-f' ‚͈ȉº‚Éà–¾‚·‚é‚悤‚ɁAŠù‚É‘¶Ý‚·‚郆[ƒU[
  ’è‹`ƒ`ƒFƒCƒ“‚ð‹­§“I‚ɏÁ‹Ž‚µ‚Ü‚·B

  ‚à‚µA input ƒ`ƒFƒCƒ““à‚Ƀ†[ƒU[’è‹`ƒ`ƒFƒCƒ“‚ª‚ ‚ê‚΁A ipchains-
  restore ‚Í‚»‚ꂪŠù‘¶‚̃`ƒFƒCƒ“‚È‚Ì‚©‚ðƒ`ƒFƒbƒN‚µ‚Ü‚·B‚»‚¤‚Å‚ ‚ê‚΁Aƒv
  ƒƒ“ƒvƒg‚ª•\Ž¦‚³‚êAƒ`ƒFƒCƒ“‚ðÁ‹Ž‚·‚é (‘S‚Ẵ‹[ƒ‹‚ðÁ‹Ž‚·‚é) ‚©Aˆ
  —‚ðƒXƒLƒbƒv‚µ‚ÄŒ»Ý‚̐ݒè‚ð•ÛŽ‚·‚é‚©‚Ì‘I‘ð‚ð‹‚ß‚ç‚ê‚Ü‚·B‚à‚µƒRƒ}ƒ“
  ƒhƒ‰ƒCƒ“‚É `-f' ‚ðŽw’è‚·‚ê‚΁Aƒvƒƒ“ƒvƒg‚Í•\Ž¦‚³‚ê‚Ü‚¹‚ñ: ƒ`ƒFƒCƒ“‚͏Á
  ‹Ž‚³‚ê‚Ü‚·B

  —á:

       # ipchains-restore < my_firewall
       Restoring `input'.
       Restoring `output'.
       Restoring `forward'.
       Restoring `ppp-in'.
       Chain `ppp-in' already exists. Skip or flush? [S/f]? s
       Skipping `ppp-in'.
       Restoring `ppp-out'.
       Chain `ppp-out' already exists. Skip or flush? [S/f]? f
       Flushing `ppp-out'.
       #

  5.  ‚»‚Ì‘¼‚̏î•ñ

  ‚±‚̍€‚͏ãq‚Ìà–¾‚©‚ç‚à‚ꂽ‚·‚ׂĂ̏î•ñ‚Æ FAQ W‚ª‚ ‚è‚Ü‚·B

  5.1.  ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð‚ǂ̂悤‚ɍ\’z‚·‚é‚©

  ‚±‚Ì–â‘è‚É‚Í‚ ‚éŽí‚Ì•ûj‚ª•K—v‚Å‚·B‘¬“x‚ðÅ“K‰»(Å‚à•’ʂ̃pƒPƒbƒg‚É
  ‘΂·‚郋[ƒ‹ƒ`ƒFƒbƒN‚ðÅ¬ŒÀ‚É‚Æ‚Ç‚ß‚é)‚µ‚č\’z‚·‚é‚©AŠÇ—«‚ð‚‚ß‚Ä
  \’z‚·‚邱‚Æ‚à‚Å‚«‚Ü‚·B

  PPP ƒŠƒ“ƒN‚ÆŒ¾‚¤ŠÔŒ‡“I‚ȃŠƒ“ƒN‚ðŽg‚Á‚Ä‚¢‚é‚È‚çA‹N“®Žž‚É input ƒ`ƒFƒC
  ƒ“‚̍ŏ‰‚̃‹[ƒ‹‚ð `-i ppp0 -jDENY' ‚ɐݒ肵‚½‚¢‚ÆŽv‚¤‚©‚à‚µ‚ê‚Ü‚¹‚ñB
  ‚»‚̏ꍇ‚́A ip-up ƒXƒNƒŠƒvƒgƒtƒ@ƒCƒ‹‚ÅŽŸ‚̂悤‚É‚µ‚Ü‚·B

  (–ó’: ƒfƒoƒCƒX ppp0 ‚©‚ç‚̃pƒPƒbƒg‚ð”jŠü‚·‚éBƒ_ƒCƒ„ƒ‹ƒAƒbƒv‰ñü‚È‚Ç
  ‚©‚ç‚̐N“ü‚ð–hŽ~‚µ‚½ê‡‚ɐݒ肷‚éB)

       #  `ppp-in' ƒ`ƒFƒCƒ“‚ðÄ¶¬‚·‚éB
       ipchains-restore -f < ppp-in.firewall

       # ppp-handling ƒ`ƒFƒCƒ“‚ÉŠ„‚荞‚ñ‚Å DENY ƒ‹[ƒ‹‚ð’u‚«Š·‚¦‚éB
       ipchains -R input 1 -i ppp0 -j ppp-in

  ip-down ‚ÍŽŸ‚̂悤‚É‚È‚è‚Ü‚·B

       ipchains -R input 1 -i ppp0 -j DENY

  5.2.  ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Å”jŠü‚µ‚Ä‚Í‚¢‚¯‚È‚¢ƒpƒPƒbƒg

  •K—v‚Å‚È‚¢ƒpƒPƒbƒg‚ðƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Å”jŠü‚·‚é‘O‚É’ˆÓ‚µ‚Ä‚¨‚©‚È‚¯‚ê‚΂¢
  ‚¯‚È‚¢Ž–‚ª‚ ‚è‚Ü‚·B

  5.2.1.  ICMP ƒpƒPƒbƒg

  ICMP ƒpƒPƒbƒg‚́A(TCP ‚â UDP ‚̂悤‚È)•Ê‚̃vƒƒgƒRƒ‹‚ɑ΂µ‚āAŽ¸”s‚ð•\
  Ž¦ (‚»‚Ì‘¼”‚ ‚é‚à‚Ì‚Ì‚È‚©‚Å) ‚·‚é‚Ì‚ÉŽg‚í‚ê‚Ä‚¢‚Ü‚·B‚Æ‚è‚킯 `–Ú“I’n
  ‚É“ž’B‚µ‚È‚¢' ƒpƒPƒbƒg‚ð•\Ž¦‚µ‚Ü‚·B‚±‚ê‚ç‚̃pƒPƒbƒg‚ðƒuƒƒbƒN‚·‚é‚ƁA
  `ƒzƒXƒg‚É“ž’B‚µ‚Ü‚¹‚ñ' ‚â `ƒzƒXƒg‚Ö‚ÌŒo˜H‚ª‚ ‚è‚Ü‚¹‚ñ' ‚Æ‚¢‚¤ƒGƒ‰[‚ð
  Žó‚¯Žæ‚邱‚Æ‚ª‚Å‚«‚È‚­‚È‚è‚Ü‚·B‚ǂ̂悤‚Ȑڑ±‚à—ˆ‚é‚Í‚¸‚Ì‚È‚¢•Ô“š‚ð‘Ò
  ‚‚¾‚¯‚É‚È‚è‚Ü‚·B‚±‚ê‚Í‚¢‚ç‚¢‚炵‚Ü‚·‚ª’v–½“I‚Å‚Í‚ ‚è‚Ü‚¹‚ñB

  ‚³‚ç‚Ɉ«‚¢‚±‚Æ‚Í MTU ŒŸo‚Å‚Ì ICMP ƒpƒPƒbƒg‚Ì–ðŠ„‚Å‚·B‚·‚ׂĂ̗ǍD‚È
  TCP ‚ÌŽÀ‘•(Linux ‚ðŠÜ‚ß‚½)‚́A•ªŠ„‚³‚ê‚È‚¢ó‘Ô‚Å(•ªŠ„‚³‚ê‚é‚ƃpƒtƒH[
  ƒ}ƒ“ƒX‚ð’ቺ‚³‚¹A‚Æ‚è‚킯A‚Æ‚«‚Ç‚«•ªŠ„‚³‚ꂽ’f•Ð‚ªŽ¸‚í‚ê‚é‚Æ‚³‚ç‚É’á
  ‰º‚µ‚Ü‚·)–Ú“I’n‚É“ž’B‚·‚éÅ‘å‚̃pƒPƒbƒgƒTƒCƒY‚ðŠ„‚èo‚·‚½‚ß‚É MTU ŒŸo
  ‚ðŽg‚Á‚Ä‚¢‚Ü‚·B MTU ŒŸo‚́A‚Ü‚¸ƒpƒPƒbƒg‚ð "•ªŠ„•s‰Â" ‚̃rƒbƒg‚ðÝ’è
  ‚µ‚Ä‘—‚èA '•ªŠ„‚ª•K—v‚¾‚ª•ªŠ„‚µ‚È‚¢Ý’è(DF)‚ð‚µ‚Ä‚¢‚é'‚Æ‚¢‚¤ƒGƒ‰[‚ð
  Ž¦‚· ICMP ƒpƒPƒbƒg‚ðŽó‚¯Žæ‚Á‚½‚çAæ‚Ù‚Ç‚Ì‚à‚Ì‚æ‚菬‚³‚¢ƒTƒCƒY‚̃pƒPƒb
  ƒg‚ð‘—‚è’¼‚·A‚Æ‚¢‚¤‚â‚è‚©‚½‚Å“®ì‚µ‚Ü‚·B‚±‚ê‚́A`–Ú“I’n‚Ö“ž’B•s”\'
  ƒpƒPƒbƒg‚̃^ƒCƒv‚ŁA‚à‚µŽó‚¯‚È‚¢‚È‚çAƒ[ƒJƒ‹ƒzƒXƒg‚Í MTU ‚ð’ቺ‚³‚¹
  ‚È‚¢‚ŁAŽÀs‚͂Ђǂ­ˆ«‚­‚È‚é‚©A‘¶Ý‚µ‚È‚¢‚±‚Æ‚É‚È‚é‚Å‚µ‚傤B

  –ó’:

     ICMP: Internet Control Message Protocol
        IP ‘ŠŒÝÚ‘±ƒlƒbƒgƒ[ƒN“à‚̃m[ƒh‚ŃGƒ‰[’Ê’BAf’fA§Œä‚Ì‚½‚ß
        ‚̃ƒbƒZ[ƒW‚ð‘—‚éƒvƒƒgƒRƒ‹

     MTU: maximum transmission unit
        ƒlƒbƒgƒ[ƒNƒCƒ“ƒ^[ƒtƒF[ƒX‚ªˆê“x‚É‘—‚邱‚Æ‚ª‚Å‚«‚éÅ‘å‚̃f[ƒ^
        —Ê

  ‚·‚×‚Ä‚Ì ICMP Œo˜H•ÏX—v‹ƒƒbƒZ[ƒW(type 5)‚ðƒuƒƒbƒN‚·‚é‚Ì‚Í•’Ê‚¾‚Æ
  ‚¢‚¤‚±‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢B‚±‚ê‚ç‚́AŒo˜H‚ðŽè“®Ý’è‚·‚éˆ×‚ÉŽg‚¤‚±‚Æ‚ªo
  —ˆ‚Ü‚·‚ª(—ǍD‚È IP ƒXƒ^ƒbƒN‚͈À‘S‘•’u‚ðŽ‚Á‚Ä‚¢‚Ü‚·)A‚µ‚΂µ‚΂â‚âŠëŒ¯
  ‚¾‚Æ’m‚ç‚ê‚Ä‚¢‚Ü‚·B

  5.2.2.  DNS (ƒl[ƒ€ƒT[ƒo[) ‚Ö‚Ì TCP Ú‘±

  ŠOŒü‚«‚Ì TCP Ú‘±‚ðƒuƒƒbƒN‚·‚é‚悤‚É‚µ‚Ä‚¢‚é‚È‚çA DNS ‚Í‚¢‚‚à UDP
  ‚ðŽg‚í‚È‚¢‚±‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢BƒT[ƒo‚©‚ç‚Ì•Ô“š‚ª 512 ƒoƒCƒg‚ð‰z‚¦‚é
  ‚ƁAƒNƒ‰ƒCƒAƒ“ƒg‚̓f[ƒ^‚𓾂é‚Ì‚É TCP Ú‘±(‚â‚Í‚è 53 ”Ôƒ|[ƒg”ԍ†) ‚ð
  Žg‚¢‚Ü‚·B

  –ó’:

     UDP: User Datagram Protocol
        ƒf[ƒ^ƒpƒPƒbƒg‚Ì“]‘—‚ðs‚¤ƒvƒƒOƒ‰ƒ€BUDP ‚Í TCP ‚É”ä‚ׂé‚ƍ‚‘¬
        ‚Å‚·‚ªAM—Š«‚ª’á‚­AƒpƒPƒbƒg‚Ì“ž’B‡˜‚ª•ÛØ‚³‚ê‚Ü‚¹‚ñB

  TCP “]‘—‚ð‹ÖŽ~‚µ‚Ä‚¢‚Ä‚àA DNS ‚ª `‚Ù‚Æ‚ñ‚Ç“®‚­' ‚̂Ńnƒ}ƒŠ‚Ü‚·B‚»‚Ì
  ‚悤‚É‚µ‚Ä‚¢‚é‚È‚çA•s‰Â‰ð‚È’·‚¢’x‰„‚â‚»‚Ì‘¼‚Ì‚Æ‚«‚Ç‚«”­¶‚·‚é DNS ‚Ì
  –â‘è‚ðŒoŒ±‚·‚邱‚Æ‚É‚È‚é‚Å‚µ‚傤B

  DNS ‚Ì–â‚¢‡‚킹‚ªA‚¢‚Â‚à“¯ˆê‚ÌŠO•”‚̃\[ƒX(/etc/resolv.conf ‚ɏ‘‚©‚ê
  ‚½s‚̃l[ƒ€ƒT[ƒo‚𒼐ڎg‚¤‚©AƒtƒHƒ[ƒhƒ‚[ƒh‚ŃLƒƒƒbƒVƒ…‚̃l[ƒ€ƒT
  [ƒo[‚ðŽg‚¤‚©‚Ì‚Ç‚¿‚ç‚©)‚É‚µ‚Ä‚¢‚é‚È‚çA(ƒLƒƒƒbƒVƒ…‚ðŽg‚Á‚Ä‚¢‚é‚È
  ‚ç)ƒ[ƒJƒ‹ domain ƒ|[ƒg‚©‚çA /etc/resolv.conf ‚ðŽg‚Á‚Ä‚¢‚é‚È‚çƒnƒC
  ƒ|[ƒg(>1023)‚©‚çA‚»‚̃l[ƒ€ƒT[ƒo‚Ì domain ƒ|[ƒg‚Ö‚Ì TCP Ú‘±‚ð‹–‰Â
  ‚·‚é•K—v‚¾‚¯‚Å‚©‚Ü‚¢‚Ü‚¹‚ñB

  –ó’: domain ‚Í /etc/services ‚ÉŽŸ‚̍€–Ú‚ª’è‹`‚³‚ê‚Ä‚¢‚é‚©‚ðŠm”F‚µ‚Ä‚¨
  ‚«‚Ü‚·BŽŸ‚̂悤‚É‚µ‚Ä’²‚ׂ邱‚Æ‚ª‚Å‚«‚Ü‚·B

        $ grep domain /etc/services
        domain          53/tcp          nameserver      # name-domain server
        domain          53/udp          nameserver

  5.2.3.  FTP ‚̈«–²

  “TŒ^“I‚ȃpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚Ì–â‘è‚Í FTP ‚Å‚·BFTP ‚É‚Í‚Q‚‚̃‚[ƒh
  ‚ª‚ ‚è‚Ü‚·B“`““I‚È‚à‚Ì‚Í ƒAƒNƒeƒBƒuƒ‚[ƒh ‚ÆŒ¾‚í‚ê‚é‚à‚̂ŁA‚æ‚èÅ‹ß
  ‚Ì‚à‚̂́A ƒpƒbƒVƒuƒ‚[ƒh ‚ÆŒ¾‚í‚ê‚Ü‚·B Web ƒuƒ‰ƒEƒU‚͒ʏíƒpƒbƒVƒuƒ‚
  [ƒh‚ªƒfƒtƒHƒ‹ƒg‚Å‚·‚ªAƒRƒ}ƒ“ƒh‚Ì FTP ƒvƒƒOƒ‰ƒ€‚͒ʏíƒAƒNƒeƒBƒuƒ‚[
  ƒh‚ªƒfƒtƒHƒ‹ƒg‚Å‚·B

  ƒAƒNƒeƒBƒuƒ‚[ƒh‚ł́AƒŠƒ‚[ƒgƒzƒXƒg‚ªƒtƒ@ƒCƒ‹‚𑗐M‚µ‚½‚¢‚Æ‚«(‚ ‚é‚¢
  ‚́A ls ‚â dir ƒRƒ}ƒ“ƒh‚ÌŒ‹‰Ê‚Å‚³‚¦)Aƒ[ƒJƒ‹ƒ}ƒVƒ“‚Ö‚Ì TCP Ú‘±‚ðƒI
  [ƒvƒ“‚µ‚悤‚Æ‚µ‚Ü‚·B‚±‚ê‚̓AƒNƒeƒBƒu FTP ‚ðØ’f‚µ‚È‚¢‚È‚çA‚±‚ê‚ç‚Ì
  TCP Ú‘±‚ð”rœ‚Å‚«‚È‚¢‚Æ‚¢‚¤‚±‚Æ‚Å‚·B

  ƒpƒbƒVƒuƒ‚[ƒh‚ðŽg‚¤ƒIƒvƒVƒ‡ƒ“‚ª‚ ‚é‚È‚çA—Ç‚¢‚±‚Æ‚Å‚·BƒpƒbƒVƒuƒ‚[ƒh
  ‚Í“ü—̓f[ƒ^‚ɑ΂µ‚Ä‚àAƒNƒ‰ƒCƒAƒ“ƒg‚©‚çƒT[ƒo‚Ƀf[ƒ^Ú‘±‚ðì‚è‚Ü‚·B
  ƒpƒbƒVƒuƒ‚[ƒh‚ªŽg‚¦‚È‚¢‚È‚çATCP Ú‘±‚É 1024 ‚ð‰z‚¦A6000 ‚©‚ç 6010
  ‚͈̔͂ɖ³‚¢ƒ|[ƒg‚ɑ΂µ‚Ä TCP Ú‘±‚ð‹–‰Â‚·‚邱‚Ƃ𐄏§‚µ‚Ü‚·B(6000
  ‚Í X-Window System ‚ÉŽg‚í‚ê‚Ä‚¢‚Ü‚·B)

  5.3.  Ping of Death ‚ð”rœ‚·‚é

  Linux ƒ}ƒVƒ“‚Í‚¢‚Ü‚â—L–¼‚È Ping of Death ‚ðS”z‚·‚邱‚Æ‚Í‚ ‚è‚Ü‚¹‚ñB
  Ping of Death ‚Í•s–@‚É‘å‚«‚È ICMP ƒpƒPƒbƒg‚𑗐M‚µA‚»‚ê‚͎󂯎æ‚葤‚Å
  TCP ƒXƒ^ƒbƒN‚É‚ ‚éƒoƒbƒtƒ@[‚ðˆì‚ꂳ‚¹A”j‰ó‚ÌŒ´ˆö‚É‚È‚è‚Ü‚·B

  ÆŽã‚ȃ}ƒVƒ“‚ð•ÛŒì‚·‚é‚È‚çA’Pƒ‚É ICMP ƒtƒ‰ƒOƒƒ“ƒg‚ðƒuƒƒbƒN‚Å‚«‚Ü
  ‚·B’ʏí‚Ì ICMP ƒpƒPƒbƒg‚Í•ªŠ„‚ð—v‹‚·‚é‚Ù‚Ç‘å‚«‚­‚Í‚ ‚è‚Ü‚¹‚ñ‚©‚çA‘å
  ‚«‚È ping ‚ð”rœ‚·‚éˆÈŠO‘¼‚ɂ͉e‹¿‚ð—^‚¦‚Ü‚¹‚ñB (•sŠm‚©‚Å‚·‚ª)Ž„
  ‚́AICMP ƒtƒ‰ƒOƒƒ“ƒg‚ð—Ž‚·‚½‚߂ɁAƒTƒCƒYƒI[ƒo[‚Ì ICMP ƒpƒPƒbƒg‚̍Å
  Œã‚̃tƒ‰ƒOƒƒ“ƒg‚¾‚¯‚ð—v‹‚µA‚»‚ÌŒ‹‰ÊAÅ‰‚̃tƒ‰ƒOƒƒ“ƒg‚¾‚¯‚ðƒuƒƒb
  ƒN‚·‚éƒVƒXƒeƒ€‚ª‚ ‚é‚Æ‚¢‚¤•ñ‚ð•·‚¢‚½‚±‚Æ‚ª‚ ‚è‚Ü‚·‚ªAÅ‰‚̃tƒ‰ƒOƒ
  ƒ“ƒg‚¾‚¯‚ðƒuƒƒbƒN‚·‚é‚悤‚ȃVƒXƒeƒ€‚Í‚¨Š©‚ß‚Å‚«‚Ü‚¹‚ñB

  Ž„‚Í ICMP ‚ðŽg‚¤‚·‚ׂẴvƒƒOƒ‰ƒ€‚ðŒ©‚Ä‚«‚Ü‚µ‚½‚ªATCP ‚â UDP ƒtƒ‰ƒO
  ƒƒ“ƒg(‚ ‚é‚¢‚Í•s–¾‚̃vƒƒgƒRƒ‹)‚́A‚±‚̂悤‚ȍUŒ‚‚ɑ΂µ‚ÄŽg‚¤‚±‚Æ‚ª‚Å
  ‚«‚È‚¢‚Æ‚¢‚¤——R‚ª‚È‚¢‚̂ŁA ICMP ƒtƒ‰ƒOƒƒ“ƒg‚ðƒuƒƒbƒN‚·‚é‚̂́AŠÔ‚É
  ‡‚킹‚Ì‰ðŒˆ‚Å‚µ‚©‚ ‚è‚Ü‚¹‚ñB

  5.4.  Teardrop ‚Æ Bonk ‚ð”rœ‚·‚é

  Teardrop ‚Æ Bonk ‚ÆŒ¾‚í‚ê‚é‚à‚̂́Ad•¡‚·‚éƒtƒ‰ƒOƒƒ“ƒg‚ð–Ú“I‚É‚µ‚Ä‚¢
  ‚é 2Ží—ނ̍UŒ‚(‚¨‚à‚ÉMicrosoft Windows NT ƒ}ƒVƒ“‚ɑ΂µ‚Ä)‚Å‚·B Linux
  ƒ‹[ƒ^‚ªƒfƒtƒ‰ƒO‹@”\‚ðŽ‚Á‚Ä‚¢‚é‚©AUŒ‚‚³‚ê‚â‚·‚¢ƒ}ƒVƒ“‚É‚·‚ׂẴtƒ‰
  ƒOƒƒ“ƒg‚ð‹ÖŽ~‚·‚é‚͕̂ʂ̃IƒvƒVƒ‡ƒ“‚Å‚·B

  5.5.  ƒtƒ‰ƒOƒƒ“ƒg”šŒ‚‚ð”rœ‚·‚é

  M—Š«‚Ì’á‚¢ TCP ƒXƒ^ƒbƒN‚́AƒpƒPƒbƒg‚ª‘½”‚̃tƒ‰ƒOƒƒ“ƒg‚É‚È‚Á‚Ä‚¢
  ‚āA‚»‚ê‚ç‚ð‚·‚×‚ÄŽóM‚Å‚«‚È‚¢‚Æ‚«A‘å—ʂ̃tƒ‰ƒOƒƒ“ƒg‚ðˆµ‚¤‚Ì‚É–â‘è‚ð
  Ž‚Á‚Ä‚¢‚é‚à‚Ì‚ª‚ ‚é‚ÆŒ¾‚í‚ê‚Ä‚¢‚Ü‚·B Linux ‚Í‚±‚̂悤‚È–â‘肪‚ ‚è‚Ü
  ‚¹‚ñBƒtƒ‰ƒOƒƒ“ƒg‚ð”jŠü(³“–‚ÉŽg—p‚³‚ꂽ‚à‚Ì‚à‰ó‚·‚©‚à‚µ‚ê‚Ü‚¹‚ñ)‚·‚é
  ‚©A‚Ü‚½‚́A `IP: always defragment' ‚ð `Y' ‚Æ(‚ ‚È‚½‚Ì Linux ƒ}ƒVƒ“‚ª
  ‚±‚ê‚ç‚̃pƒPƒbƒg‚ɑ΂µ‚Ä—BˆêŽæ‚蓾‚éŒo˜H‚Å‚ ‚éê‡‚Ì‚Ý)‘I‘ð‚µ‚½ƒJ[ƒl
  ƒ‹‚ðƒRƒ“ƒpƒCƒ‹‚·‚邱‚Æ‚Å”rœ‚Å‚«‚Ü‚·B

  5.6.  ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð•ÏX‚·‚é

  ƒtƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð•ÏX‚·‚é‚Æ‚«Aƒ^ƒCƒ~ƒ“ƒO‚Ì–â‘肪‚ ‚è‚Ü‚·B•sŽè
  Û‚ª‚ ‚é‚ƁA•ÏX‚Ì“r’†‚łɃpƒPƒbƒg‚ð’Ê‚µ‚Ä‚µ‚Ü‚¢‚Ü‚·BˆÀˆÕ‚È‚â‚è‚©‚½‚Æ
  ‚µ‚Ä‚ÍŽŸ‚̂悤‚È•û–@‚ª‚ ‚è‚Ü‚·:

       # ipchains -I input 1 -j DENY
       # ipchains -I output 1 -j DENY
       # ipchains -I forward 1 -j DENY

       . •ÏX‚µ‚Ü‚· ...

       # ipchains -D input 1
       # ipchains -D output 1
       # ipchains -D forward 1
       #

  •ÏX‚µ‚Ä‚¢‚éŠÔA‚·‚ׂẴpƒPƒbƒg‚ª”jŠü‚³‚ê‚Ü‚·B

  •ÏX‚ª’Pˆê‚̃`ƒFƒCƒ“‚ÉŒÀ’肳‚ꂽ‚à‚Ì‚È‚çAV‚µ‚¢ƒ‹[ƒ‹‚ŐV‚µ‚¢ƒ`ƒFƒCƒ“
  ‚ðì‚肽‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñBV‚µ‚¢ƒ`ƒFƒCƒ“‚ðŽ¦‚·‚à‚̂ƁAŒÃ‚¢ƒ`ƒFƒCƒ“‚ðŽ¦
  ‚·ƒ‹[ƒ‹‚ð’u‚«Š·‚¦‚Ü‚·(`-R')B‚»‚¤‚·‚ê‚΁AŒÃ‚¢ƒ`ƒFƒCƒ“‚ðíœ‚Å‚«‚Ü‚·B
  ‚±‚Ì’u‚«Š·‚¦‚̓Aƒgƒ~ƒbƒN‚É(‘¼‚Ì‚à‚̂ɂ͉e‹¿‚µ‚È‚¢‚Å)s‚í‚ê‚Ü‚·B

  5.7.  IP ‹U‘••ÛŒì(IP Spoof Protection)‚ðA‚ǂ̂悤‚ɐݒ肵‚½‚ç‚æ‚¢‚Å‚·
  ‚©?

  IP ‹U‘•‚́AƒzƒXƒg‚ª•Ê‚̃zƒXƒg‚©‚琿‹‚³‚ê‚éƒpƒPƒbƒg‚ð‘—‚èo‚·‹Zp‚Å
  ‚·BƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚́A‚±‚̃\[ƒXƒAƒhƒŒƒX‚ð‚à‚Æ‚É”»’è‚·‚é‚̂ŁA
  IP ‹U‘•‚̓pƒPƒbƒgƒtƒBƒ‹ƒ^[‚ð‚²‚Ü‚©‚·‚½‚ß‚ÉŽg‚¤‚à‚Ì‚Å‚·B SYN UŒ‚‚₵
  ‚¸‚­(Teardrop)A‚Ü‚½–½Žæ‚è‚Ì Ping(Ping of Death) ‚â‚»‚ê‚ÉŽ—‚½‚à‚Ì(‚»‚ê
  ‚炪‰½ŽÒ‚©‚ð’m‚ç‚È‚¢‚È‚çS”z‚Í•s—p‚Å‚·)‚ðŽg‚Á‚Ä‚¢‚éUŒ‚ŽÒ‚̐gŒ³‚ð‰B‚·
  ‚½‚ß‚É‚à‚Ü‚½Žg‚í‚ê‚Ü‚·B

  IP ‹U‘•‚ð–hŒä‚·‚é‚à‚Á‚Æ‚à‚æ‚¢•û–@‚́Aƒ\[ƒXƒAƒhƒŒƒX”FØ(Source Address
  Verification)‚ÆŒ¾‚í‚ê‚é‚à‚̂ŁA‚»‚ê‚̓‹[ƒeƒBƒ“ƒOƒR[ƒh‚É‚æ‚Á‚čs‚í‚ê
  ‚é‚à‚̂ŁA‘S‚­ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Å‚Í‚ ‚è‚Ü‚¹‚ñB
  /proc/sys/net/ipv4/conf/all/rp_filter ‚Æ‚¢‚¤ƒtƒ@ƒCƒ‹‚ð’T‚µ‚ĉº‚³‚¢B‚±
  ‚ꂪ‚ ‚é‚È‚çAŽn“®‚·‚邽‚тɃ\[ƒXƒAƒhƒŒƒX”FØ(Source Address
  Verification)‚ð—LŒø‚·‚邱‚Æ‚ª³‚µ‚¢‰ðŒˆ‚É‚È‚è‚Ü‚·B‚±‚̂悤‚É‚·‚邽
  ‚߁A‚¢‚¸‚ê‚©‚̃lƒbƒgƒ[ƒNƒCƒ“ƒ^[ƒtƒF[ƒX‚ª‰Šú‰»‚³‚ê‚é‘O‚ɁA‚¨Žg‚¢‚Ì
  init ƒXƒNƒŠƒvƒg‚Ì‚Ç‚±‚©‚ÉŽŸ‚̍s‚ð‰Á‚¦‚Ü‚·B

       # ‚±‚ꂪ‚à‚Á‚Æ‚à—Ç‚¢•û–@‚Å‚·: ƒ\[ƒXƒAƒhƒŒƒX”FØ
       # (Source Address Verification) ‚ð—LŒø‚É‚µAŒ»Ý‚ ‚é‚à‚Ì‚Æ‚±‚ê‚©‚ç
       # Žg‚¤‚·‚ׂẴCƒ“ƒ^[ƒtƒF[ƒX‚É‹U‘••ÛŒì‚ð‚µ‚Ü‚·B

       if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then
         echo -n "Setting up IP spoofing protection..."
         for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
             echo 1 > $f
         done
         echo "done."
       else
         echo PROBLEMS SETTING UP IP SPOOFING PROTECTION.  BE WORRIED.
         echo "CONTROL-D will exit from this shell and continue system startup."
         echo
         # ƒRƒ“ƒ\[ƒ‹ã‚ŃVƒ“ƒOƒ‹ƒ†[ƒUƒVƒFƒ‹‚ð‹N“®‚µ‚Ü‚·B
         /sbin/sulogin $CONSOLE
       fi

  ‚±‚ꂪ‚Å‚«‚È‚¢‚È‚çA‚·‚ׂẴCƒ“ƒ^[ƒtƒF[ƒX‚ð•ÛŒì‚·‚邽‚ß‚ÉŽè“®‚Ń‹[
  ƒ‹‚ð‘‚«‰Á‚¦‚Ü‚·B‚±‚̏ꍇ‚Í‚»‚ꂼ‚ê‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚ɂ‚¢‚Ä‚Ì’mŽ¯‚ª
  •K—v‚Å‚·BƒJ[ƒlƒ‹ 2.1 ‚ÍŽ©“®“I‚É127.* ‚̃AƒhƒŒƒX(ƒ[ƒJƒ‹ƒ‹[ƒvƒoƒbƒN
  ƒCƒ“ƒ^[ƒtƒF[ƒX lo ‚É—\–ñ‚³‚ꂽ‚à‚Ì)‚©‚ç—v‹‚·‚éƒpƒPƒbƒg‚ð‹‘”Û‚µ‚Ü
  ‚·B

  —Ⴆ‚Î eth0, eth1 ‚»‚µ‚Ä ppp0 ‚Ì 3‚‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚ª‚ ‚è‚Ü‚·BƒCƒ“
  ƒ^[ƒtƒF[ƒX‚̃AƒhƒŒƒX‚ƃlƒbƒgƒ}ƒXƒN‚ð’m‚邽‚ß‚É ifconfig ‚ðŽg‚¤‚±‚Æ‚ª
  ‚Å‚«‚Ü‚·B—Ⴆ‚΁A eth0 ‚ªƒlƒbƒgƒ}ƒXƒN 255.255.255.0 ‚̃lƒbƒgƒ[ƒN
  192.168.1.0 ‚ɃAƒ^ƒbƒ`‚³‚êA eth1 ‚̓lƒbƒgƒ}ƒXƒN 255.0.0.0 ‚̃lƒbƒgƒ
  [ƒN 10.0.0.0 ‚ɃAƒ^ƒbƒ`‚³‚êA ppp0 ‚ªƒCƒ“ƒ^[ƒlƒbƒg(—\–ñ‚³‚ꂽƒvƒ‰ƒC
  ƒx[ƒg IP ƒAƒhƒŒƒX‚ðœ‚¢‚āA‚Ç‚ñ‚ȃAƒhƒŒƒX‚Å‚à‹–‚³‚ê‚Ü‚·)BŽŸ‚̂悤‚È
  ƒ‹[ƒ‹‚ð‰Á‚¦‚é‚Æ‚æ‚¢‚Å‚µ‚傤B

       # ipchains -A input -i eth0 -s ! 192.168.1.0/255.255.255.0 -j DENY
       # ipchains -A input -i ! eth0 -s 192.168.1.0/255.255.255.0 -j DENY
       # ipchains -A input -i eth1 -s ! 10.0.0.0/255.0.0.0 -j DENY
       # ipchains -A input -i ! eth1 -s 10.0.0.0/255.0.0.0 -j DENY
       #

  ‚±‚Ì•û–@‚Í‚¨Žg‚¢‚̃lƒbƒgƒ[ƒN‚ª•Ï‚í‚é‚ƁA‚¢‚Ü‚Ü‚Å‚Ì‚»‚̏ó‘Ô‚ðˆÛŽ‚·‚é
  ‚½‚ß‚É‚ ‚È‚½‚̓tƒ@ƒCƒAƒEƒH[ƒ‹ƒ‹[ƒ‹‚ð•ÏX‚µ‚È‚¯‚ê‚΂¢‚¯‚È‚¢‚̂ŁAƒ\[
  ƒXƒAƒhƒŒƒX”FØ(Source Address Verification)‚ōs‚¤‚Ù‚Ç—Ç‚­‚ ‚è‚Ü‚¹‚ñB

  2.0 Œn‚̃J[ƒlƒ‹‚ð‚¨Žg‚¢‚È‚çAŽŸ‚ÉŽ¦‚·‚悤‚ȃ‹[ƒ‹‚ðŽg‚Á‚āAƒ‹[ƒvƒoƒb
  ƒNƒCƒ“ƒ^[ƒtƒF[ƒX‚à‚Ü‚½•ÛŒì‚µ‚½‚¢‚©‚à‚µ‚ê‚Ü‚¹‚ñBŽŸ‚̂悤‚Ƀ‹[ƒ‹‚ðŽg
  ‚¢‚Ü‚·:

       # ipchains -A input -i ! lo -s 127.0.0.0/255.0.0.0 -j DENY
       #

  5.8.  ÅV‚̃vƒƒWƒFƒNƒg

  Ž„‚̓†[ƒUƒXƒy[ƒXƒ‰ƒCƒuƒ‰ƒŠ‚ð‘‚¢‚Ä‚¨‚èA‚»‚ê‚Í`libfw' ‚ƌĂ΂ê‚éƒ\[
  ƒXƒfƒBƒXƒgƒŠƒrƒ…[ƒVƒ‡ƒ“‚ðŠÜ‚ñ‚Å‚¢‚Ü‚·B‚»‚ê‚Í ipchains ‚̃o[ƒWƒ‡ƒ“
  1.3 ˆÈã‚Ì”\—Í‚ðŽg—p‚µ‚Ä(IP_FIREWALL_NETLINK ‚̃Rƒ“ƒtƒBƒOƒIƒvƒVƒ‡ƒ“‚ð
  Žg‚Á‚Ä)ƒ†[ƒUƒXƒy[ƒX‚ɃpƒPƒbƒg‚ðƒRƒs[‚µ‚Ü‚·B

  ƒ}[ƒN’l‚̓pƒPƒbƒg‚Ì‚½‚ß‚Ì Service ‚ÌŽ¿ (QoS) ƒpƒ‰ƒ[ƒ^‚ðŒˆ‚ß‚é‚½‚ß‚É
  Žg‚¤‚©A‚ ‚é‚¢‚́AƒpƒPƒbƒg‚ª‚ǂ̂悤‚Ƀ|[ƒg‚É’†Œp‚³‚ê‚é‚©‚ðŒˆ‚ß‚é‚½‚ß
  ‚ÉŽg‚¤‚±‚Æ‚ª‚Å‚«‚Ü‚·BŽ„‚Í‚Ç‚¿‚ç‚à—˜—p‚µ‚Ä‚¢‚Ü‚¹‚ñ‚ªA‚ ‚È‚½‚ª‚»‚ê‚É‚Â
  ‚¢‚ď‘‚¢‚Ă݂悤‚ÆŽv‚¤‚È‚çA‚Ç‚¤‚¼Ž„‚ɘA—‚ð‚µ‚Ä‰º‚³‚¢B

  ó‘ÔŠÏŽ@(stateful inspection)(Ž„‚̓_ƒCƒiƒ~ƒbƒNƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Æ‚¢‚¤Œ¾
  —t‚ð’ñ¥‚µ‚Ü‚·)‚̂悤‚È‚±‚Ƃ́A‚±‚̃‰ƒCƒuƒ‰ƒŠ‚ðŽg‚¤ƒ†[ƒUƒXƒy[ƒX‚ÅŽÀ
  ‘•‚³‚ê‚é‚Å‚µ‚傤B‚»‚Ì‘¼‚Ì‘f°‚炵‚¢ƒAƒCƒfƒBƒA‚́Aƒ†[ƒUƒXƒy[ƒXƒf[ƒ‚
  ƒ“‚Å’T‚·‚±‚Ƃц[ƒU‚²‚Æ‚ÌŠî”Տã‚ŃpƒPƒbƒg‚ðƒRƒ“ƒgƒ[ƒ‹‚µ‚Ü‚·B‚±‚ê‚Í
  ‚Æ‚Ä‚àŠÈ’P‚Å‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB

  5.8.1.  SPF: ƒXƒe[ƒgƒtƒ‹ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO

  ftp://ftp.interlinx.bc.ca/pub/spf <ftp://ftp.interlinx.bc.ca/pub/spf>
  ã‹L‚́A Brian Murrell ‚Ì SPF ƒvƒƒWƒFƒNƒg‚̃TƒCƒg‚ŁA‚»‚ê‚̓†[ƒUƒXƒy
  [ƒX‚Őڑ±‚Ì’ÇÕ‚ð‚µ‚Ü‚·B’áƒoƒ“ƒh•‚̃TƒCƒg‚ɏd—v‚ȃZƒLƒ…ƒŠƒeƒB‚ð’ljÁ
  ‚µ‚Ä‚¢‚Ü‚·B

  Œ»ÝASPF ‚ɂ‚¢‚Ä‚Ì•¶‘‚Í‚Ù‚Æ‚ñ‚Ç‚ ‚è‚Ü‚¹‚ñ‚ªAŽŸ‚Ì‚à‚Ì‚Í Brian ‚ªŽ¿
  –â‚É“š‚¦‚½‚à‚Ì‚ðƒ[ƒŠƒ“ƒOƒŠƒXƒg‚É“Še‚µ‚½‚à‚Ì‚Å‚·B

        > ‚»‚ꂱ‚»‚ª³‚ÉŽ„‚Ì–]‚Þ‚±‚Æ‚ðs‚È‚¤‚ƐM‚¶‚Ä‚¢‚Ü‚·B
        > ŠO•”‚Ö‚Ì—v‹‚̃ŒƒXƒ|ƒ“ƒX‚Æ‚µ‚ăpƒPƒbƒg‚ð’Ê‚·‚悤‚É
        > ˆêŽž“I‚È''‹t—¬(backward)''‚̃‹[ƒ‹‚ðƒCƒ“ƒXƒg[ƒ‹‚µ‚Ä‚¢‚Ü‚·B

       ‚Í‚¢A‚»‚Ì’Ê‚è‚Å‚·B
       ƒvƒƒgƒRƒ‹‚ɂ‚¢‚Ä—‰ð‚·‚ê‚΂·‚é‚قǁA "‹t—¬(backward)" ‚̃‹[ƒ‹‚Í‚à‚Á‚Ɛ³‚µ‚­‚È‚è‚Ü‚·B
       ¡‚Ì‚Æ‚±‚ë‚́A (Šo‚¦‚ŏ‘‚¢‚Ä‚¢‚Ü‚·AƒGƒ‰[‚âŽè”²‚©‚肪‚ ‚Á‚Ä‚à‹–‚µ‚ĉº‚³‚¢)
       FTP(ƒAƒNƒeƒBƒu‚ƃpƒbƒVƒuA“à‘¤‚ÆŠO‘¤‚Ì—¼•û)ARealAudioA tracerouteA
       ICMP ‚»‚µ‚à“I‚È ICQ( ICQ ƒT[ƒo‚©‚ç“ü‚é‚à‚́A‚»‚µ‚āA’¼Ú“I‚È TCP Ú‘±‚©‚ç‚Ì‚à‚́A‚µ‚©‚µ‚È‚ª‚çƒtƒ@ƒCƒ‹“]‘—‚̂悤‚È‚±‚Æ‚ÉŠÖ‚·‚é‘æ2 ‚Ì’¼Ú“I‚È TCP Ú‘±‚È‚Ç‚Í‚Ü‚¾‚ ‚è‚Ü‚¹‚ñ‚ª)‚ðƒTƒ|[ƒg‚µ‚Ä‚¢‚Ü‚·B

       > SPF ‚Í ipchains ‚ð’u‚«Š·‚¦‚é‚Ì‚Å‚·‚©A‚»‚ê‚Æ‚à•â‘«‚·‚é‚Ì‚Å‚·‚©B

       •â‘«‚·‚é‚à‚Ì‚Å‚·B
       ipchains ‚Í Linux ƒ}ƒVƒ“‚ð‰z‚¦‚Ä“`‚í‚éƒpƒPƒbƒg‚ð‹–‰Â‚µ‚½‚èA–h‚¢‚¾‚è‚·‚铹‹ï‚Å‚·B
       SPF ‚̓hƒ‰ƒCƒo‚Å‚ ‚èAƒgƒ‰ƒtƒBƒbƒN‚ð‚½‚¦‚¸ŠÄŽ‹‚µ‚āA‚ǂ̂悤‚ɕύX‚·‚é‚©‚ð ipchains ‚É“`‚¦A ipchains ‚́A•ÏX‚ðƒgƒ‰ƒtƒBƒbƒNƒpƒ^[ƒ“‚É“`‚¦‚Ü‚·B

  5.8.2.  Michael Hasenstein ‚Ì ftp-data ƒnƒbƒN

  SuSE ‚Ì Michael Hasenstein ‚Í ipchains ‚É ftp Ú‘±‚̒ǐՋ@”\‚ð’ljÁ‚·‚é
  ƒJ[ƒlƒ‹ƒpƒbƒ`‚ð‘‚¢‚Ä‚¢‚Ü‚·BŽŸ‚Ì‚Æ‚±‚ë‚É‚ ‚è‚Ü‚·B
  http://www.suse.de/~mha/patch.ftp-data-2.gz
  <http://www.suse.de/~mha/patch.ftp-data-2.gz>

  5.9.  ¡Œã‚̉ۑè

  ƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Æ NAT ‚Í 2.4 ‚ōĐ݌v‚³‚ê‚Ä‚¢‚Ü‚·BŒv‰æ‚Æ‹c˜_‚Í
  netfilter ‚̃[ƒŠƒ“ƒOƒŠƒXƒg‚Å—˜—p‚Å‚«‚Ü‚·B ( http://lists.samba.org
  <http://lists.samba.org>‚ðŒ©‚Ä‰º‚³‚¢) ‚±‚̂悤‚È‹­‰»‚Í‘½‚­‚Ì—˜•Ö«‚Ì–â
  ‘è‚ð‰ðŒˆ‚µA(ŽÀÛAƒtƒ@ƒCƒAƒEƒH[ƒ‹‚âƒ}ƒXƒJƒŒ[ƒh‚Í‚±‚̂悤‚ȍ¢“ï ‚Í‚È
  ‚¢‚Í‚¸‚Å‚·)A‚»‚µ‚Ä‚à‚Á‚Æ‚Í‚é‚©‚ɏ_“‚Ì‚ ‚éƒtƒ@ƒCƒAƒEƒH[ƒ‹‚Ì”­“W‚ð
  ‘£‚·‚Í‚¸‚Å‚·B

  6.  ˆê”Ê“I‚È–â‘è

  6.1.  ipchains -L ‚ðŽg‚¤‚ƃtƒŠ[ƒY‚µ‚Ü‚·!

  DNS ŒŸõ‚ðŽó‚¯•t‚¯‚È‚¢‚Ì‚Å‚µ‚傤BŒ‹‹Ç‚̓^ƒCƒ€ƒAƒEƒg‚É‚È‚Á‚Ä‚µ‚Ü‚¢‚Ü
  ‚·B ipchains ‚ɑ΂µ‚Ä `-n' (”’l)ƒtƒ‰ƒO‚ðŽg‚Á‚Ä‚Ý‚Ü‚µ‚傤B `-n' ‚́A
  ƒl[ƒ€‚Å‚ÌŒŸõ‚ðs‚¢‚Ü‚¹‚ñB

  6.2.  ”½“]‚ª‚Å‚«‚Ü‚¹‚ñ!

  `!'ƒIƒvƒVƒ‡ƒ“‚Ì—¼‘¤‚ɃXƒy[ƒX‚ð‚¨‚¢‚āA`!' ƒIƒvƒVƒ‡ƒ“‚ð’P“Æ‚ÅŽg‚í‚È‚¯
  ‚ê‚΂¢‚¯‚Ü‚¹‚ñB (4.1.4.1 ‚Å’ˆÓ‚µ‚Ü‚µ‚½)“TŒ^“I‚ȊԈႢ‚Å‚·B

       # ipchains -A input -i !eth0 -j DENY
       #

  `!eth0' ‚ƌĂ΂ê‚éƒCƒ“ƒ^[ƒtƒF[ƒX‚Í‘¶Ý‚µ‚Ü‚¹‚ñ‚ªA ipchains ‚Í‚»‚ꂪ
  ‚í‚©‚ç‚È‚¢‚Ì‚Å‚·B

  (–ó’: `!' ‚ÌŽg‚¢•û‚ÉŠÖ‚·‚钍ˆÓ‚́A 4Í‚ðŽQÆB `!' ƒIƒvƒVƒ‡ƒ“‚Ì‘OŒã‚Ì
  ƒXƒy[ƒX‚ð–Y‚ê‚È‚¢‚ʼnº‚³‚¢B)

  6.3.  Masquerading ‚Ü‚½‚Í Forwarding ‚ª“®‚«‚Ü‚¹‚ñ!

  ƒpƒPƒbƒg‚Ì forwarding ‚ª‰Â”\‚É‚È‚Á‚Ä‚¢‚é‚Ì‚©‚Ç‚¤‚©‚ðŠm”F‚µ‚ĉº‚³‚¢(Å
  ‹ß‚̃J[ƒlƒ‹‚ł́AƒfƒtƒHƒ‹ƒg‚Å `Žg—p‚µ‚È‚¢'‚É‚È‚Á‚Ä‚¢‚Ü‚·BƒpƒPƒbƒg‚Í
  `forward' chain ‚ð‰z‚¦‚邱‚Æ‚·‚ç‚È‚¢‚Æ‚¢‚¤‚±‚Æ‚Å‚·)B root Œ ŒÀ‚ÅŽŸ‚Ì
  ‚悤‚É“ü—Í‚·‚ê‚ΕύX‚Å‚«‚Ü‚·B

       # echo 1 > /proc/sys/net/ipv4/ip_forward
       #

  ‚±‚ê‚Å‚¤‚Ü‚­‚¢‚­‚È‚çA–ˆ‰ñA‰Â”\‚É‚È‚é‚悤‚ɁA‚¨Žg‚¢‚Ì‹N“®ƒXƒNƒŠƒvƒg‚Ì
  ‚Ç‚±‚©‚É‚±‚̍s‚ð‘‚¢‚Ä‚¨‚­‚±‚Æ‚ª‚Å‚«‚Ü‚·B‚±‚̃Rƒ}ƒ“ƒh‚ª“®‚­‘O‚Ƀtƒ@ƒC
  ƒAƒEƒH[ƒ‹‚ðÝ’肵‚½‚¢‚Í‚¸‚Å‚·B‚»‚¤‚µ‚È‚¢‚ƁA(”jŠü‚·‚ׂ«)ƒpƒPƒbƒg‚ð’Ê
  ‰ß‚³‚¹‚Ä‚µ‚Ü‚¤‹@‰ï‚ð—^‚¦‚Ä‚µ‚Ü‚¢‚Ü‚·B

  6.4.  -j REDIR ‚ª“®‚«‚Ü‚¹‚ñ!

  ƒŠƒ_ƒCƒŒƒNƒg‚ð“®‚©‚·‚½‚߂ɂ̓pƒPƒbƒg‚Ì forwarding (ãq‚ðŒ©‚Ä‰º‚³‚¢)‚ð
  ‹–‰Â‚µ‚È‚¯‚ê‚΂¢‚¯‚Ü‚¹‚ñB‚»‚¤‚µ‚È‚¢‚ƁAƒ‹[ƒeƒBƒ“ƒO‚̃R[ƒh‚̓pƒPƒbƒg
  ‚ð—Ž‚µ‚Ü‚·B‚»‚±‚ŁAƒŠƒ_ƒCƒŒƒNƒg‚Ì‚Ý‚ðŽg‚Á‚Ä‚¢‚ătƒHƒ[ƒfƒBƒ“ƒO‚Í‘S‘R
  Žg‚Á‚Ä‚¢‚È‚¢‚È‚ç‚΁A‚±‚Ì‚±‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢B

  REDIRECT (input ƒ`ƒFƒCƒ“‚É‚ ‚é)‚́Aƒ[ƒJƒ‹ƒvƒƒZƒX‚©‚ç‚̐ڑ±‚É‚ÍŒø‰Ê
  ‚ª‚È‚¢‚±‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢B

  (–ó’: ipchains ‚̃IƒvƒVƒ‡ƒ“‚ɂ‚¢‚ẮAman ipchains ‚ÅŠm”F‚µ‚ĉº‚³
  ‚¢B)

  6.5.  ƒƒCƒ‹ƒhƒJ[ƒhƒCƒ“ƒ^[ƒtƒF[ƒX‚ª“®‚«‚Ü‚¹‚ñ!

  ƒJ[ƒlƒ‹‚Ì 2.1.102 ‚Æ 2.1.103 ”Å(‚»‚µ‚ÄŽ„‚ªì‚Á‚½‚¢‚­‚‚©‚̌¢ƒpƒb
  ƒ`)‚ɂ̓oƒO‚ª‚ ‚è‚Ü‚µ‚½B‚»‚ê‚ç‚̃J[ƒlƒ‹‚ł́A(-i ppp+ ‚̂悤‚È)ƒƒC
  ƒ‹ƒhƒJ[ƒhƒCƒ“ƒ^[ƒtƒF[ƒX‚ª‚¤‚Ü‚­‚¢‚©‚È‚¢ƒGƒ‰[‚𖾎¦‚·‚é ipchains ƒR
  ƒ}ƒ“ƒh‚𐶐¬‚µ‚Ü‚µ‚½B

  ‚±‚ÌŒ‚́AÅV‚̃J[ƒlƒ‹‚Æ web ƒTƒCƒg‚É‚ ‚é 2.0.34 ‚̃pƒbƒ`‚ł͏C³‚³
  ‚ê‚Ä‚¢‚Ü‚·BƒJ[ƒlƒ‹ƒ\[ƒX‚ðŽè‚ŏC³‚·‚é‚È‚çA include/linux/ip_fw.h
  ƒtƒ@ƒCƒ‹‚Ì 63s‚ ‚½‚è‚ðŽŸ‚Ì‚æ‚¤‚ɕύX‚µ‚Ü‚·:

       #define IP_FW_F_MASK    0x002F  /* All possible flag bits mask   */

  ‚±‚ê‚Í ``0x003F'' ‚ð“ǂނׂ«‚Å‚·B‚±‚ê‚ðC³‚µAƒJ[ƒlƒ‹‚ðÄ\’z‚µ‚Ü
  ‚·B

  6.6.  TOS (Type of Service) ‚ª“®‚«‚Ü‚¹‚ñ!

  ‚±‚ê‚ÍŽ„‚̊ԈႢ‚Å‚µ‚½B Service field ‚̃^ƒCƒv‚ðÝ’è‚́A 2.1.102 ‚©‚ç
  2.1.111 ”ł̃J[ƒlƒ‹‚Å‚ÍŽÀÛ‚É‚Í Service ‚̃^ƒCƒv‚ðÝ’è‚Å‚«‚È‚¢‚Ì‚Å
  ‚·B‚±‚Ì–â‘è‚́A2.1.112 ‚ł͏C³‚³‚ê‚Ü‚µ‚½B

  6.7.  ipautofw ‚Æipportfw ‚ª“®‚«‚Ü‚¹‚ñ!

  2.0.x ‚Å‚Í“®‚«‚Ü‚¹‚ñB ipchains ‚Æipautofw ‚ ‚é‚¢‚Í ipportfw ‚ɑ΂·‚é
  ‘å‚«‚ȃpƒbƒ`‚ðì¬‚µAˆÛŽ‚·‚鎞ŠÔ‚ª‚ ‚è‚Ü‚¹‚ñB

  2.1.x ‚ɑ΂µ‚ẮAŽŸ‚Ì‚Æ‚±‚ë‚©‚ç Juan Ciarlante ‚Ì ipmasqadm ‚ðƒ_ƒEƒ“
  ƒ[ƒh‚µ‚ĉº‚³‚¢B http://juanjox.linuxhq.com/
  <http://juanjox.linuxhq.com/> ‚»‚µ‚āAipautofw ‚âipportfw ‚ðŽg‚¤‚Æ‚«A
  ipportfw ‚Ì‚©‚í‚è‚É ipmasqadm portfw ‚ð“ü—Í‚µA‚»‚µ‚āA ipautofw ‚Ì‚©
  ‚í‚è‚Éipmasqadm autofw ‚ð“ü—Í‚µ‚āA‚«‚¿‚ñ‚ÆŽg‚Á‚ĉº‚³‚¢B

  6.8.  xosview ‚ª‰ó‚ê‚Ä‚¢‚Ü‚·!

  1.6.0 ”Å‚©A‚»‚êˆÈ~‚Ì‚à‚Ì‚É‚µ‚ĉº‚³‚¢B‚»‚ê‚ç‚̔łł́AƒJ[ƒlƒ‹ 2.1.x
  ‚ɑ΂µ‚Ăǂ̂悤‚È firewall rule ‚à—v‹‚µ‚Ü‚¹‚ñB‚±‚ê‚Í 1.6.1 ‚Å‚Ü‚¾‰ó
  ‚ê‚Ä‚¢‚é‚ÆŽv‚í‚ê‚é‚È‚çA‚»‚̏ꍇ‚Í’˜ŽÒ‚ɃoƒO•ñ‚ð‚µ‚Ä‰º‚³‚¢(‚»‚ê‚́A
  Ž„‚ÌŽ¸”s‚Å‚Í‚ ‚è‚Ü‚¹‚ñ)B

  6.9.  `-j REDIRECT' ‚Å Segmentation ƒGƒ‰[‚É‚È‚è‚Ü‚·!

  ‚±‚ê‚Í ipchains 1.3.3 ”ł̃oƒO‚Å‚·‚̂ŁAV‚µ‚¢”łɃAƒbƒvƒOƒŒ[ƒh‚µ‚ĉº
  ‚³‚¢B

  6.10.  ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚̃^ƒCƒ€ƒAƒEƒg’l‚ðÝ’è‚Å‚«‚Ü‚¹‚ñ!

  (ƒJ[ƒlƒ‹ 2.1.x ‚É‚¨‚¢‚Ä) 2.1.123 ˆÈ~‚Å‚Í“®‚«‚Ü‚¹‚ñB 2.1.124 ‚Őݒè
  ‚µ‚Ä‚Ý‚é‚ƁA masquerading timeouts ‚̓J[ƒlƒ‹‚ðƒƒbƒN‚µ‚Ä‚µ‚Ü‚¢‚Ü‚·
  (net/ipv4/ip_fw.c ƒtƒ@ƒCƒ‹‚Ì 1328 s‚É‚ ‚é return ‚ð ret =  ‚ɕύX‚µ‚Ä
  ‰º‚³‚¢)B 2.1.125 ‚ł́A‚¿‚á‚ñ‚Æ“®‚«‚Ü‚·B

  ’: 4.1.1 ‚àŒ©‚ĉº‚³‚¢B

  6.11.  IPX ‚ðƒtƒ@ƒCƒAƒEƒH[ƒ‹‚µ‚½‚¢‚Å‚·!

  ‘¼‚É‚à“¯‚¶‚悤‚È‚²Šó–]‚ª‚ ‚é‚ÆŽv‚¢‚Ü‚·BŽc”O‚È‚ª‚çAŽ„‚̃R[ƒh‚Í IP ‚ð
  ‚·‚ׂĖԗ…‚µ‚Ä‚¢‚邾‚¯‚Å‚·‚ªAK‚¢‚È‚±‚ƂɁAIPX‚ðƒtƒ@ƒCƒAƒEƒI[ƒ‹‚·‚é
  ‚Ì‚É•K—v‚È‹@”\‚Í‚·‚ׂĂ»‚ë‚Á‚Ä‚¢‚Ü‚·B‚»‚ê‚ð—˜—p‚µ‚Ä‚ ‚È‚½‚²Ž©g‚ŃR[
  ƒh‚ð‘‚­•K—v‚ª‚ ‚è‚Ü‚·‚ªA‰Â”\‚Ȕ͈͂Ŏ„‚ÍŠì‚ñ‚Å‚¨Žè“`‚¢‚µ‚Ü‚µ‚傤B

  –ó’: IPX ‚Æ‚¢‚¤‚̂́ANovell ‚É‚æ‚é MS-DOS ã‚̃lƒbƒgƒ[ƒNƒvƒƒgƒRƒ‹
  ‚Å‚·B IPX ‚ɂ‚¢‚ẮAIPX-HOWTO‚ðŽQÆ‚µ‚ĉº‚³‚¢B
  http://www.linux.or.jp/JF/JFdocs/IPX-HOWTO.html

  7.  ŽÀ—p“I‚È—á

  ‚±‚̔͗á‚́A1999 ”N‚Ì 3 ŒŽ‚ÉŠJÃ‚³‚ꂽ LinuxWorld ‚Å Michael Neuling
  ‚ÆŽ„‚ª”­•\‚µ‚½ƒ`ƒ…[ƒgƒŠƒAƒ‹‚©‚çˆø—p‚µ‚Ü‚µ‚½B‚±‚ê‚́A—^‚¦‚ç‚ꂽ–â‘è‚ð
  ‰ðŒˆ‚·‚邽‚ß‚Ì—Bˆê‚Ì•û–@‚Å‚Í‚È‚¢‚Å‚·‚ªA‘½•ªÅ‚à’Pƒ‚È‚à‚Ì‚Å‚·B‚±‚Ì”Í
  —á‚ð—L‰v‚È‚à‚Ì‚¾‚ÆŽv‚Á‚Ä’¸‚¯‚ê‚΍K‚¢‚Å‚·B

  7.1.  \¬

  o  ƒ}ƒXƒJƒŒ[ƒh‚³‚ꂽ“à•”ƒlƒbƒgƒ[ƒN(—lX‚È OS ‚ª‘¶Ý‚µ‚Ä‚¢‚Ü‚·) ‚ª‘¶
     Ý‚µA"GOOD" ‚ƌĂт܂·B

  o  •ª—£‚³‚ꂽƒlƒbƒgƒ[ƒNã‚ÉŒöŠJƒT[ƒo‚ª‘¶Ý‚µ‚Ä‚¢‚Ü‚·(”ñ•‘•‰»’n‘Ñ
     "Demilitarized Zone" ‚Æ‚¢‚¤‚±‚Æ‚Å "DMZ" ‚ƌĂт܂·)B

  o  ƒCƒ“ƒ^[ƒlƒbƒg‚Ö PPP Ú‘±‚µ‚Ä‚¢‚Ü‚·( "BAD" ‚ƌĂт܂·)B

     ŠO•”ƒlƒbƒgƒ[ƒN (BAD)
             „ 
             „ 
         ppp0„ 
     „¡„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¢
     „ 192.84.219.1  „              ƒT[ƒoƒlƒbƒgƒ[ƒN (DMZ)
     „               „ eth0
     „               „ „Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¦„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¦„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„¦„Ÿ
     „               „ 192.84.219.250„             „             „ 
     „               „               „             „             „ 
     „ 192.168.1.250 „               „             „             „ 
     „¤„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„Ÿ„£          „¡„Ÿ„Ÿ„Ÿ„¢    „¡„Ÿ„Ÿ„Ÿ„¢    „¡„Ÿ„Ÿ„Ÿ„¢
             „  eth1             „  SMTP „     „  DNS  „     „  WWW  „ 
             „                   „¤„Ÿ„Ÿ„Ÿ„£    „¤„Ÿ„Ÿ„Ÿ„£    „¤„Ÿ„Ÿ„Ÿ„£
             „               192.84.219.128  192.84.219.129  192.84.218.130
             „ 
     “à•”ƒlƒbƒgƒ[ƒN (GOOD)

  7.2.  –Ú“I

  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“:

     ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä PING ‚ª‰Â”\
        ƒ}ƒVƒ“‚ªƒ_ƒEƒ“‚µ‚Ä‚¢‚é‚©‚Ç‚¤‚©‚ð’m‚é‚Ì‚É‘å•Ï–ð‚É—§‚¿‚Ü‚·B

     ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä TRACEROUTE ‚ª‰Â”\
        ‚±‚ê‚à‚Ü‚½AŒ´ˆö•ªÍ‚É–ð‚É—§‚¿‚Ü‚·B

     DNS ‚ւ̃AƒNƒZƒX‚ª‰Â”\
        ping ‚Æ DNS ‚ð‚æ‚èŽg‚¢‚â‚·‚­‚·‚邽‚ß‚Å‚·B

  DMZ “à:

  ƒ[ƒ‹ƒT[ƒo

  o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì SMTP ‚ª‰Â”\

  o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì SMTP ‚̃AƒNƒZƒvƒg(Žó‚¯“ü‚ê)‚ª‰Â”\

  o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì POP-3 ‚̃AƒNƒZƒvƒg‚ª‰Â”\

  ƒl[ƒ€ƒT[ƒo

  o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì DNS ‚Ì—v‹‚ª‰Â”\

  o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒNAƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚©‚ç‚Ì DNS ‚̃AƒNƒZ
     ƒvƒg‚ª‰Â”\
  ƒEƒFƒuƒT[ƒo

  o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì HTTP ‚̃AƒNƒZƒvƒg‚ª‰Â”\

  o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì Rsync ‚É‚æ‚éƒAƒNƒZƒX‚ª‰Â”\

  “à•”ƒlƒbƒgƒ[ƒN:

     ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì WWW, ftp ,traceroute, ssh ‚ð‹–‰Â‚·‚é
        ‚±‚ê‚ç‚́A‹–‰Â‚̑ΏۂƂµ‚Ä‚Í‚©‚È‚è•W€“I‚È‚±‚Æ‚Å‚·B“à•”ƒlƒbƒgƒ
        [ƒNã‚̃}ƒVƒ“‚ɑ΂µ‚Ä‚Ù‚Ú‘S‚Ä‚ð‹–‰Â‚·‚邱‚Æ‚©‚çŽn‚ß‚Ü‚·‚ªA‚±‚±
        ‚ł͐§ŒÀ‚ð‚©‚¯‚Ä‚¢‚Ü‚·B

     ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì SMTP ‚ð‹–‰Â‚·‚é
        “–‘RAƒ[ƒ‹‚ÍŠO•”‚Ö‘—M‚Å‚«‚é‚悤‚É‚µ‚½‚¢‚Å‚·B

      ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì POP-3 ‚ð‹–‰Â‚·‚é
        ƒ[ƒ‹‚ð“Ç‚Þ•û–@‚Å‚·B

      ƒl[ƒ€ƒT[ƒo‚Ö‚Ì DNS ‚ð‹–‰Â‚·‚é
        WWW ‚Æ ftp, traceroute, ssh ‚ð—˜—p‚·‚éÛ‚ɁAŠO•”ƒl[ƒ€‚ÌŒŸõ‚ð‚·
        ‚é‚Ì‚É•K—v‚Å‚·B

      ƒEƒFƒuƒT[ƒo‚Ö‚Ì rsync ‚ð‹–‰Â‚·‚é
        ŠO•”Œü‚¯ƒEƒFƒuƒT[ƒo‚Æ“à•”ƒEƒFƒuƒT[ƒo‚𓯊ú‚³‚¹‚é•û–@‚Å‚·B

      ƒEƒFƒuƒT[ƒo‚Ö‚Ì WWW ‚ð‹–‰Â‚·‚é
        “–‘RAŠO•”Œü‚¯ƒEƒFƒuƒT[ƒo‚֐ڑ±‚Å‚«‚é‚ׂ«‚Å‚·B

      ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚Ö‚Ì ping ‚ð‹–‰Â‚·‚é
        ‚±‚ê‚́Aˆê”Ê“I‚ɍL‚­—e”F‚³‚ê‚Ä‚¢‚邱‚Æ‚Å‚·B‚‚܂èƒtƒ@ƒCƒAƒEƒH[
        ƒ‹ƒ}ƒVƒ“‚ªƒ_ƒEƒ“‚µ‚Ä‚¢‚é‚©‚Ç‚¤‚©‚ðAŠm”F‚Å‚«‚é‚悤‚É‚·‚邽‚ß‚Å
        ‚·(‚»‚ê‚ÅŠO•”ƒTƒCƒg‚ª‰ó‚ê‚Ä‚¢‚½ê‡‚́A”ñ“‚ê‚Ü‚¹‚ñ‚Ì‚Å)B

  7.3.  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ðs‚¤‘O‚É

  o  IP ‹U‘••ÛŒì (Anti-spoofing)

     ‚¢‚©‚È‚é”ñ‘Ώ̂̃‹[ƒeƒBƒ“ƒO‚àŽ‚Á‚Ä‚¢‚È‚¢‚̂ŁA‘S‚ẴCƒ“ƒ^[ƒtƒF
     [ƒX‚ɑ΂µ‚Ä IP ‹U‘••ÛŒì‚ð’P‚ɃIƒ“‚Å‚«‚Ü‚·B

       # for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f; done
       #

  o  ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚̃‹[ƒ‹‚Æ‚µ‚Ä‘S‚Ä‚ð‹‘”Û‚É‚·‚é

     ¡‚܂Œʂ胍[ƒJƒ‹‚̃‹[ƒvƒoƒbƒNƒgƒ‰ƒtƒBƒbƒN‚Í‹–‰Â‚µ‚Ü‚·‚ªA‚»‚êˆÈ
     ŠO‚Ì‘S‚Ä‚ð‹‘”Û‚µ‚Ü‚·B

       # ipchains -A input -i ! lo -j DENY
       # ipchains -A output -i ! lo -j DENY
       # ipchains -A forward -j DENY
       #

  o  ƒCƒ“ƒ^[ƒtƒF[ƒX‚̃ZƒbƒgƒAƒbƒv

     ƒCƒ“ƒ^[ƒtƒF[ƒX‚̃ZƒbƒgƒAƒbƒv‚́A‘å’ïƒu[ƒgŽž‚̃XƒNƒŠƒvƒg‚ÅŽÀs‚³
     ‚ê‚Ü‚·BƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚̃‹[ƒ‹‚ª“K—p‚³‚ê‚é‘O‚ɃpƒPƒbƒg‚ª˜R‚ꂾ‚·‚±
     ‚Æ‚ð–h‚®ˆ×‚ɁAƒCƒ“ƒ^[ƒtƒF[ƒX‚ªÝ’肳‚ê‚é‘O‚ɏã‹L‚̃Xƒeƒbƒv‚ªŽÀs
     ‚³‚ê‚Ä‚¢‚邱‚Æ‚ðŠm”F‚µ‚ĉº‚³‚¢B

  o  ƒvƒƒgƒRƒ‹•Ê‚Ƀ}ƒXƒJƒŒ[ƒhƒ‚ƒWƒ…[ƒ‹‚ð‘g‚ݍž‚Þ

     FTP ‚ð—˜—p‚·‚éÛ‚ɂ́Aƒ}ƒXƒJƒŒ[ƒhƒ‚ƒWƒ…[ƒ‹‚ð‘g‚ݍž‚Þ•K—v‚ª‚ ‚è‚Ü
     ‚·B‚»‚¤‚·‚邱‚ƂŁA“à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚̃AƒNƒeƒBƒu‚ƃpƒbƒVƒu FTP
     ‚ª `‚¿‚á‚ñ‚Æ“®ì‚µ‚Ü‚·'B

       # insmod ip_masq_ftp
       #

  7.4.  ƒpƒPƒbƒg‚ð’ʉ߂³‚¹‚邽‚߂̃pƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO

  ƒ}ƒXƒJƒŒ[ƒh‚ðŽg—p‚µ‚āAforward ƒ`ƒFƒCƒ“‚ŃtƒBƒ‹ƒ^[‚ð‚©‚¯‚邱‚Ƃ͍ŗÇ
  ‚Ì•û–@‚Å‚·B

  forward ƒ`ƒFƒCƒ“‚ðƒ\[ƒX^‚ ‚Äæ ƒCƒ“ƒ^[ƒtƒF[ƒX‚ɍ‡‚킹‚Ä—lX‚ȃ†[
  ƒU’è‹`ƒ`ƒFƒCƒ“‚É•ªŠ„‚µ‚ĉº‚³‚¢B‚‚܂èA–â‘è‚ðŽæˆµ‚¢‚â‚·‚¢’PˆÊ‚É•ª‰ð‚·
  ‚é‚Ì‚Å‚·B

       ipchains -N good-dmz
       ipchains -N bad-dmz
       ipchains -N good-bad
       ipchains -N dmz-good
       ipchains -N dmz-bad
       ipchains -N bad-good

  ICMP ‚Ì•W€ƒGƒ‰[‚ðƒAƒNƒZƒvƒg‚·‚邱‚Ƃ́A‹¤’Ê‚Ì“à—e‚Å‚·B‚µ‚½‚ª‚Á‚āA
  ‚»‚Ì‚½‚߂̃`ƒFƒCƒ“‚ðì‚è‚Ü‚·B

  ipchains -N icmp-acc

  7.4.1.  forward ƒ`ƒFƒCƒ“‚©‚çƒWƒƒƒ“ƒv‚³‚¹‚é

  Žc”O‚È‚±‚ƂɁA(forward ƒ`ƒFƒCƒ“‚Å‚Í)o—̓Cƒ“ƒ^[ƒtƒF[ƒX‚µ‚©•ª‚©‚è‚Ü‚¹
  ‚ñB‚µ‚½‚ª‚Á‚āAƒpƒPƒbƒg‚ª‚ǂ̃Cƒ“ƒ^[ƒtƒF[ƒX‚©‚ç“ü‚Á‚Ä‚­‚é‚©‚ðŒ©”²‚­
  ‚½‚߂ɁAƒ\[ƒXƒAƒhƒŒƒX‚ðŽg—p‚µ‚Ü‚·(‹U‘••ÛŒì‚ªƒAƒhƒŒƒX‚Ì‚È‚è‚·‚Ü‚µ‚ð–h
  ‚¢‚Å‚¢‚é‚Ì‚Å‘åä•v‚Å‚·)B

  ‚±‚ê‚ç‚Ì‚¢‚¸‚ê‚É‚àƒ}ƒbƒ`‚µ‚È‚¢ƒpƒPƒbƒg(–¾‚ç‚©‚ɁA‚»‚̂悤‚È‚±‚Æ‚Í‹N‚±
  ‚ç‚È‚¢‚Í‚¸‚Å‚·‚ª)‚Í‘S‚ăƒO‚ðŽæ‚邱‚Æ‚É’ˆÓ‚µ‚ĉº‚³‚¢B

       ipchains -A forward -s 192.168.1.0/24 -i eth0 -j good-dmz
       ipchains -A forward -s 192.168.1.0/24 -i ppp0 -j good-bad
       ipchains -A forward -s 192.84.219.0/24 -i ppp0 -j dmz-bad
       ipchains -A forward -s 192.84.219.0/24 -i eth1 -j dmz-good
       ipchains -A forward -i eth0 -j bad-dmz
       ipchains -A forward -i eth1 -j bad-good
       ipchains -A forward -j DENY -l

  7.4.2.  icmp-acc ƒ`ƒFƒCƒ“‚ð’è‹`‚·‚é

  ƒpƒPƒbƒg‚ª(ˆÈ‰º‚Ì)ƒGƒ‰[ ICMP ‚Ì‚¢‚¸‚ê‚©‚È‚çƒAƒNƒZƒvƒg‚³‚ê‚Ü‚·B‚³‚à‚È
  ‚¯‚ê‚΁Aƒ}ƒbƒ`‚µ‚È‚©‚Á‚½ƒpƒPƒbƒg‚ɑ΂·‚鐧Œä‚Í icmp-acc ƒ`ƒFƒCƒ“‚©‚甲
  ‚¯‚āAŒÄo‚µŒ³‚̃`ƒFƒCƒ“‚É–ß‚³‚ê‚邱‚Æ‚É‚È‚è‚Ü‚·B

       ipchains -A icmp-acc -p icmp --icmp-type destination-unreachable -j ACCEPT
       ipchains -A icmp-acc -p icmp --icmp-type source-quench -j ACCEPT
       ipchains -A icmp-acc -p icmp --icmp-type time-exceeded -j ACCEPT
       ipchains -A icmp-acc -p icmp --icmp-type parameter-problem -j ACCEPT

  7.4.3.  GOOD (“à•”ƒlƒbƒgƒ[ƒN) ‚©‚ç DMZ (ƒT[ƒoƒlƒbƒgƒ[ƒN)

  “à•”ƒlƒbƒgƒ[ƒN‚ɑ΂·‚鐧ŒÀ :

  o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì WWW, ftp, traceroute, ssh ‚ð‹–‰Â‚·‚é

  o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì SMTP ‚ð‹–‰Â‚·‚é

  o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì POP-3 ‚ð‹–‰Â‚·‚é

  o  ƒl[ƒ€ƒT[ƒo‚Ö‚Ì DNS ‚ð‹–‰Â‚·‚é

  o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì rsync ‚ð‹–‰Â‚·‚é

  o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì WWW ‚ð‹–‰Â‚·‚é

  o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚Ö‚Ì ping ‚ð‹–‰Â‚·‚é

  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç DMZ ‚̍ۂɃ}ƒXƒJƒŒ[ƒh‚Í‚Å‚«‚Ü‚·‚ªA‚±‚±‚ł͍s‚¢
  ‚Ü‚¹‚ñB“à•”ƒlƒbƒgƒ[ƒNã‚̂ǂ̃}ƒVƒ“‚àˆ«ˆÓ‚Ì‚ ‚邱‚Æ‚ð‚µ‚È‚¢‚Í‚¸‚È‚Ì
  ‚ŁA‹‘”Û‚³‚ê‚é‘S‚ẴpƒPƒbƒg‚̃ƒO‚ðŽæ‚è‚Ü‚·B

  Debian ‚̌¢ƒo[ƒWƒ‡ƒ“‚ł́A/etc/services ã‚Ì `pop3' ‚ð`pop-3' ‚ÆŒÄ
  ‚Ô‚Ì‚Å’ˆÓ‚µ‚ĉº‚³‚¢B‚±‚Ì‚±‚Æ‚Í RFC1700 ‚ƈê’v‚µ‚Ä‚¢‚Ü‚¹‚ñB

       ipchains -A good-dmz -p tcp -d 192.84.219.128 smtp -j ACCEPT
       ipchains -A good-dmz -p tcp -d 192.84.219.128 pop3 -j ACCEPT
       ipchains -A good-dmz -p udp -d 192.84.219.129 domain -j ACCEPT
       ipchains -A good-dmz -p tcp -d 192.84.219.129 domain -j ACCEPT
       ipchains -A good-dmz -p tcp -d 192.84.218.130 www -j ACCEPT
       ipchains -A good-dmz -p tcp -d 192.84.218.130 rsync -j ACCEPT
       ipchains -A good-dmz -p icmp -j icmp-acc
       ipchains -A good-dmz -j DENY -l

  7.4.4.  BAD (ŠO•”ƒlƒbƒgƒ[ƒN)‚©‚ç DMZ (ƒT[ƒoƒlƒbƒgƒ[ƒN)

  o  DMZ ‚ɑ΂·‚鐧ŒÀ:

     o  ƒ[ƒ‹ƒT[ƒo

        o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì SMTP ‚ª‰Â”\

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì SMTP ‚̃AƒNƒZƒvƒg‚ª‰Â”\

        o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì POP-3 ‚̃AƒNƒZƒvƒg‚ª‰Â”\

     o  ƒl[ƒ€ƒT[ƒo

        o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì DNS ‚Ì—v‹‚ª‰Â”\

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒNAƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚©‚ç‚Ì DNS ‚Ì
           ƒAƒNƒZƒvƒg‚ª‰Â”\

     o  ƒEƒFƒuƒT[ƒo

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì HTTP ‚̃AƒNƒZƒvƒg‚ª‰Â”\

        o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì Rsync ‚̃AƒNƒZƒvƒg‚ª‰Â”\

  o  ŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç DMZ ‚Ö‹–‰Â‚·‚邱‚Æ

     o  NŠQsˆ×‚ɂ‚¢‚ẮAƒƒO‚͂Ƃ炸‚»‚Ì‚Ü‚Ü‚É‚·‚é

  ipchains -A bad-dmz -p tcp -d 192.84.219.128 smtp -j ACCEPT
  ipchains -A bad-dmz -p udp -d 192.84.219.129 domain -j ACCEPT
  ipchains -A bad-dmz -p tcp -d 192.84.219.129 domain -j ACCEPT
  ipchains -A bad-dmz -p tcp -d 192.84.218.130 www -j ACCEPT
  ipchains -A bad-dmz -p icmp -j icmp-acc
  ipchains -A bad-dmz -j DENY

  7.4.5.  GOOD (“à•”ƒlƒbƒgƒ[ƒN)‚©‚ç BAD (ŠO•”ƒlƒbƒgƒ[ƒN)

  o  “à•”ƒlƒbƒgƒ[ƒN‚ɑ΂·‚鐧ŒÀ:

     o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì WWW, ftp ,traceroute, ssh ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì SMTP ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì POP-3 ‚ð‹–‰Â‚·‚é

     o  ƒl[ƒ€ƒT[ƒo‚Ö‚Ì DNS ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì rsync ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì WWW ‚ð‹–‰Â‚·‚é

     o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚Ö‚Ì ping ‚ð‹–‰Â‚·‚é

  o  ˆê”ʂɁA“à•”ƒlƒbƒgƒ[ƒN‚©‚çŠO•”ƒlƒbƒgƒ[ƒN‚ɑ΂µ‚ẮA‘S‚Ä‚ð‹–‰Â
     ‚µA‚»‚ê‚©‚琧ŒÀ‚ð‰Á‚¦‚Ü‚·B‰äX‚́Aƒtƒ@ƒVƒXƒg‚È‚Ì‚Å‚·B

     o  NŠQsˆ×‚̃ƒO‚ðŽæ‚é

     o  ƒpƒbƒVƒu FTP ‚́Aƒ}ƒXƒJƒŒ[ƒhƒ‚ƒWƒ…[ƒ‹‚ŏˆ—‚·‚é

     o  UDP ‚Ì ‚ ‚Đæƒ|[ƒg 33434 ˆÈ~ ‚Í traceroute ‚ÅŽg—p‚³‚ê‚é

       ipchains -A good-bad -p tcp --dport www -j MASQ
       ipchains -A good-bad -p tcp --dport ssh -j MASQ
       ipchains -A good-bad -p udp --dport 33434:33500 -j MASQ
       ipchains -A good-bad -p tcp --dport ftp -j MASQ
       ipchains -A good-bad -p icmp --icmp-type ping -j MASQ
       ipchains -A good-bad -j REJECT -l

  7.4.6.  DMZ ‚©‚ç GOOD (“à•”ƒlƒbƒgƒ[ƒN)

  o  “à•”ƒlƒbƒgƒ[ƒN‚ɑ΂·‚鐧ŒÀ:

     o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì WWW, ftp ,traceroute, ssh ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì SMTP ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì POP-3 ‚ð‹–‰Â‚·‚é

     o  ƒl[ƒ€ƒT[ƒo‚Ö‚Ì DNS ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì rsync ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì WWW ‚ð‹–‰Â‚·‚é

     o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚Ö‚Ì ping ‚ð‹–‰Â‚·‚é

  o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç DMZ ‚̍ۂɃ}ƒXƒJƒŒ[ƒh‚·‚éê‡A’P‚É‚»‚êˆÈŠO‚Ì
     ƒpƒPƒbƒg‚ð‹‘”Û‚µ‚ĉº‚³‚¢BŽÀ‚Ì‚Æ‚±‚ëA’P‚ɃRƒlƒNƒVƒ‡ƒ“‚ªŠm—§‚³‚ꂽ
     ˆê•”‚̃pƒPƒbƒg‚Ì‚Ý‹–‰Â‚·‚邾‚¯‚Å‚·B

       ipchains -A dmz-good -p tcp ! -y -s 192.84.219.128 smtp -j ACCEPT
       ipchains -A dmz-good -p udp -s 192.84.219.129 domain -j ACCEPT
       ipchains -A dmz-good -p tcp ! -y -s 192.84.219.129 domain -j ACCEPT
       ipchains -A dmz-good -p tcp ! -y -s 192.84.218.130 www -j ACCEPT
       ipchains -A dmz-good -p tcp ! -y -s 192.84.218.130 rsync -j ACCEPT
       ipchains -A dmz-good -p icmp -j icmp-acc
       ipchains -A dmz-good -j DENY -l

  7.4.7.  DMZ ‚©‚ç BAD (ŠO•”ƒlƒbƒgƒ[ƒN)

  o  DMZ ‚ɑ΂·‚鐧ŒÀ:

     o  ƒ[ƒ‹ƒT[ƒo

        o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì SMTP ‚ª‰Â”\

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì SMTP ‚̃AƒNƒZƒvƒg‚ª‰Â”\

        o  ŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì POP-3 ‚̃AƒNƒZƒvƒg‚ª‰Â”\

     o  ƒl[ƒ€ƒT[ƒo

        o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì DNS ‚Ì‘—M‚ª‰Â”\

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒNAƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚©‚ç‚Ì DNS ‚Ì
           ƒAƒNƒZƒvƒg‚ª‰Â”\

     o  ƒEƒFƒuƒT[ƒo

        o  “à•”‚ÆŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì HTTP ‚̃AƒNƒZƒvƒg‚ª‰Â”\

        o  “à•”ƒlƒbƒgƒ[ƒN‚©‚ç‚Ì Rsync ‚̃AƒNƒZƒvƒg‚ª‰Â”\

  o

       ipchains -A dmz-bad -p tcp -s 192.84.219.128 smtp -j ACCEPT
       ipchains -A dmz-bad -p udp -s 192.84.219.129 domain -j ACCEPT
       ipchains -A dmz-bad -p tcp -s 192.84.219.129 domain -j ACCEPT
       ipchains -A dmz-bad -p tcp ! -y -s 192.84.218.130 www -j ACCEPT
       ipchains -A dmz-bad -p icmp -j icmp-acc
       ipchains -A dmz-bad -j DENY -l

  7.4.8.  BAD (ŠO•”ƒlƒbƒgƒ[ƒN)‚©‚ç GOOD (“à•”ƒlƒbƒgƒ[ƒN)

  o  ŠO•”ƒlƒbƒgƒ[ƒN‚©‚ç“à•”ƒlƒbƒgƒ[ƒN‚Ö“ü‚Á‚Ä—ˆ‚é‚à‚Ì‘S‚Ä(ƒ}ƒXƒJƒŒ[
     ƒh‚³‚ê‚Ä‚¢‚È‚¢‚à‚Ì)‚ð‹–‰Â‚µ‚Ü‚¹‚ñB

       ipchains -A bad-good -j REJECT

  7.4.9.  Linux ƒ}ƒVƒ“Ž©g‚ɑ΂·‚éƒpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“ƒO

  o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“Ž©g‚É“ü‚Á‚Ä—ˆ‚éƒpƒPƒbƒbƒg‚É‚àAƒpƒPƒbƒg
     ƒtƒBƒ‹ƒ^ƒŠƒ“ƒO‚ðs‚¢‚½‚¢‚È‚çAinput ƒ`ƒFƒCƒ“‚ŃpƒPƒbƒgƒtƒBƒ‹ƒ^ƒŠƒ“
     ƒO‚ðs‚¤•K—v‚ª‚ ‚è‚Ü‚·B‚ ‚ĐæƒCƒ“ƒ^[ƒtƒF[ƒX–ˆ‚ɁAˆê‚ƒ`ƒFƒCƒ“‚ð
     ì‚è‚Ü‚·B

       ipchains -N bad-if
       ipchains -N dmz-if
       ipchains -N good-if

  o  ì‚Á‚½ƒ`ƒFƒCƒ“‚ɃWƒƒƒ“ƒv‚³‚¹‚Ü‚·B

       ipchains -A input -d 192.84.219.1 -j bad-if
       ipchains -A input -d 192.84.219.250 -j dmz-if
       ipchains -A input -d 192.168.1.250 -j good-if

  7.4.9.1.  BAD (ŠO•”ƒlƒbƒgƒ[ƒN) ƒCƒ“ƒ^[ƒtƒF[ƒX

  o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“:

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä PING ‚ª‰Â”\

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä TRACEROUTE ‚ª‰Â”\

     o  DNS ‚ւ̃AƒNƒZƒX‚ª‰Â”\

  o  ‚Ü‚½ŠO•”ƒlƒbƒgƒ[ƒN—p‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚́Aƒ}ƒXƒJƒŒ[ƒh‚³‚ꂽƒp
     ƒPƒbƒg(ƒ}ƒXƒJƒŒ[ƒh‚́Aƒ\[ƒXƒ|[ƒg‚Æ‚µ‚Ä 61000 ‚©‚ç 65095 ‚ðŽg—p‚µ
     ‚Ü‚·)‚ւ̃Šƒvƒ‰ƒC‚Æ ICMP ƒGƒ‰[APING ‚̃Šƒvƒ‰ƒC‚àŽó‚¯“ü‚ê‚Ü‚·B

  ipchains -A bad-if -i ! ppp0 -j DENY -l
  ipchains -A bad-if -p TCP --dport 61000:65095 -j ACCEPT
  ipchains -A bad-if -p UDP --dport 61000:65095 -j ACCEPT
  ipchains -A bad-if -p ICMP --icmp-type pong -j ACCEPT
  ipchains -A bad-if -j icmp-acc
  ipchains -A bad-if -j DENY

  7.4.9.2.  DMZ ƒCƒ“ƒ^ƒtƒF[ƒX

  o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚ɑ΂·‚鐧ŒÀ:

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä PING ‚ª‰Â”\

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä TRACEROUTE ‚ª‰Â”\

     o  DNS ‚ւ̃AƒNƒZƒX‚ª‰Â”\

  o  DMZ ƒCƒ“ƒ^[ƒtƒF[ƒX‚́ADNS ‚©‚ç‚̃Šƒvƒ‰ƒC‚Æ ping ‚̃Šƒvƒ‰ƒCAƒGƒ‰
     [ ICMP ‚ðŽó‚¯“ü‚ê‚Ü‚·B

       ipchains -A dmz-if -i ! eth0 -j DENY
       ipchains -A dmz-if -p TCP ! -y -s 192.84.219.129 53 -j ACCEPT
       ipchains -A dmz-if -p UDP -s 192.84.219.129 53 -j ACCEPT
       ipchains -A dmz-if -p ICMP --icmp-type pong -j ACCEPT
       ipchains -A dmz-if -j icmp-acc
       ipchains -A dmz-if -j DENY -l

  7.4.9.3.  GOOD (“à•”ƒlƒbƒgƒ[ƒN)ƒCƒ“ƒ^[ƒtƒF[ƒX

  o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚ɑ΂·‚鐧ŒÀ:

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä PING ‚ª‰Â”\

     o  ‘S‚Ẵlƒbƒgƒ[ƒN‚ɑ΂µ‚Ä TRACEROUTE ‚ª‰Â”\

     o  DNS ‚ւ̃AƒNƒZƒX‚ª‰Â”\

  o  “à•”ƒlƒbƒgƒ[ƒN‚ɑ΂·‚鐧ŒÀ:

     o  ŠO•”ƒlƒbƒgƒ[ƒN‚Ö‚Ì WWW, ftp ,traceroute, ssh ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì SMTP ‚ð‹–‰Â‚·‚é

     o  ƒ[ƒ‹ƒT[ƒo‚Ö‚Ì POP-3 ‚ð‹–‰Â‚·‚é

     o  ƒl[ƒ€ƒT[ƒo‚Ö‚Ì DNS ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì rsync ‚ð‹–‰Â‚·‚é

     o  ƒEƒFƒuƒT[ƒo‚Ö‚Ì WWW ‚ð‹–‰Â‚·‚é

     o  ƒpƒPƒbƒgƒtƒBƒ‹ƒ^[ƒ}ƒVƒ“‚Ö‚Ì ping ‚ð‹–‰Â‚·‚é

  o  “à•”ƒlƒbƒgƒ[ƒNƒCƒ“ƒ^[ƒtƒF[ƒX‚́Aping ‚Æ ping ‚̃Šƒvƒ‰ƒCAƒGƒ‰[
     ICMP ‚ðŽó‚¯“ü‚ê‚Ü‚·B

       ipchains -A good-if -i ! eth1 -j DENY
       ipchains -A good-if -p ICMP --icmp-type ping -j ACCEPT
       ipchains -A good-if -p ICMP --icmp-type pong -j ACCEPT
       ipchains -A good-if -j icmp-acc
       ipchains -A good-if -j DENY -l

  7.5.  ÅŒã‚É

  o  ƒuƒƒbƒLƒ“ƒO‚̃‹[ƒ‹‚ðíœ‚µ‚Ü‚·B

       ipchains -D input 1
       ipchains -D forward 1
       ipchains -D output 1

  8.  •t˜^: ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ

  ‚±‚ê‚ç‚̕ύX‚ÌŠô‚‚©‚̓J[ƒlƒ‹‚̕ύX‚ÌŒ‹‰Ê‚Å‚ ‚èA‚Ü‚½Šô‚‚©‚Í
  ipchains ‚Æ ipfwadm ‚Ƃ̈Ⴂ‚ÌŒ‹‰Ê‚Å‚·B

  1. ‘½‚­‚̈ø”‚͍Ĕz’u‚³‚ê‚Ü‚µ‚½: Œ»ÝA‘啶Žš‚̓Rƒ}ƒ“ƒh‚ðŽ¦‚µA¬•¶Žš
     ‚̓IƒvƒVƒ‡ƒ“‚ðŽ¦‚µ‚Ü‚·B

  2. ”CˆÓ‚̃`ƒFƒCƒ“‚ªƒTƒ|[ƒg‚³‚ê‚Ü‚µ‚½‚̂ŁA‘g‚ݍž‚݃`ƒFƒCƒ“‚à“¯—l‚Ƀt
     ƒ‰ƒO‚Å‚Í‚È‚­ƒtƒ‹ƒl[ƒ€‚Å‹LÚ‚·‚é•K—v‚ª‚ ‚è‚Ü‚·B (—á. `-I' ‚Å‚Í‚È‚­
     `input' ‚Æ‹LÚ‚µ‚Ü‚·).

  3. `-k' ƒIƒvƒVƒ‡ƒ“‚Í‚È‚­‚È‚è‚Ü‚µ‚½B `! -y' ‚ðŽg‚Á‚ĉº‚³‚¢B

  4. `-b' ƒIƒvƒVƒ‡ƒ“‚́A’Pˆê‚Ì `‘o•ûŒü' ƒ‹[ƒ‹‚Æ‚¢‚¤‚æ‚è‚àA‚Þ‚µ‚ëŽÀÛ‚É
     ‚Í2‚‚̃‹[ƒ‹‚ɑ΂µ‚Ä‘}“ü/’ljÁ/íœ‚ðs‚¢‚Ü‚·B

  5. `-b' ƒIƒvƒVƒ‡ƒ“‚Í 2‚‚̃`ƒFƒbƒN‚ðs‚¤‚½‚߂ɁA `-C' ƒIƒvƒVƒ‡ƒ“‚É‚Ä–³
     Œø‰»‚³‚ê‚Ü‚·B(ŠeX‚Ì•ûŒü‚Ì1‚Â)

  6. `-l' ‚ɑ΂·‚é `-x' ƒIƒvƒVƒ‡ƒ“‚Í `-v' ‚ɕύX‚³‚ê‚Ü‚µ‚½B

  7. ‚à‚¤A•¡”‚Ì‘—M‘¤‚ÆŽóM‘¤‚̃|[ƒg‚̓Tƒ|[ƒg‚³‚ê‚Ü‚¹‚ñB–]‚Ü‚µ‚­
     ‚́Aƒ|[ƒg•‚ð”Û’è‚Å‚«‚邱‚ƂŁA‘½­‚Í‚»‚Ì–Ú“I‚ð•â‚¤‚Å‚µ‚傤B

  8. ƒCƒ“ƒ^[ƒtƒF[ƒX‚Í(ƒAƒhƒŒƒX‚Å‚È‚­)–¼‘O‚É‚æ‚Á‚Ä‚Ì‚ÝŽw’è‚Å‚«‚Ü‚·B
     ‚Ü‚ŸA‚Ç‚Ì‚Ý‚¿AˆÈ‘O‚̈Ӗ¡•t‚¯‚Í 2.1 ƒJ[ƒlƒ‹ƒVƒŠ[ƒY‚Ő©‚ɕύX‚³
     ‚ꂽ‚±‚Æ‚Å‚·‚µB

  9. ƒpƒPƒbƒg‚Ì’f•Ð‰»‚ÍŒŸ¸‚³‚ê‚Ü‚·‚̂ŁAŽ©“®“I‚É‚Í‘f’ʂ肵‚Ü‚¹‚ñB

  10.
     –¾Ž¦“I‚ÈŒv”ƒ`ƒFƒCƒ“‚Í”pŽ~‚³‚ê‚Ü‚µ‚½B
  11.
     IPã‚Ì”CˆÓ‚̃vƒƒgƒRƒ‹‚ªƒeƒXƒg‚Å‚«‚Ü‚·B

  12.
     SYN ‚Æ ACK ‚Ì‘g‡‚¹‚ɑ΂·‚éˆÈ‘O‚̐U•‘‚¢ (ˆÈ‘O‚Í”ñ TCP ƒpƒPƒbƒg‚Í–³
     Ž‹‚µ‚Ä‚¢‚Ü‚µ‚½) ‚͕ύX‚³‚ê‚Ü‚µ‚½; SYN ƒIƒvƒVƒ‡ƒ“‚́A”ñ TCP “Æ“Á‚̃‹
     [ƒ‹‚ɑ΂µ‚Ä‚Í–³Œø‚Å‚·B

  13.
     Œ»ÝA32ƒrƒbƒgƒ}ƒVƒ“ã‚̃JƒEƒ“ƒ^‚Í 64ƒrƒbƒg‚Å‚ ‚èA32ƒrƒbƒg‚Å‚Í‚ ‚è
     ‚Ü‚¹‚ñB

  14.
     Œ»ÝA”½“]ƒIƒvƒVƒ‡ƒ“‚ªƒTƒ|[ƒg‚³‚ê‚Ä‚¢‚Ü‚·B

  15.
     Œ»ÝA ICMP ƒR[ƒh‚ªƒTƒ|[ƒg‚³‚ê‚Ä‚¢‚Ü‚·B

  16.
     Œ»ÝAƒƒCƒ‹ƒhƒJ[ƒhƒCƒ“ƒ^[ƒtƒF[ƒX‚ªƒTƒ|[ƒg‚³‚ê‚Ä‚¢‚Ü‚·B

  17.
     Œ»ÝATOS ‘€ì‚Í•ª•Êƒ`ƒFƒbƒN‚³‚ê‚Ü‚·: ŒÃ‚¢ƒJ[ƒlƒ‹ƒR[ƒh‚Í `ƒ[ƒ‚Å
     ‚È‚¯‚ê‚΂Ȃç‚È‚¢' TOS ƒrƒbƒg‚ð(•s“–‚É)‘€ì‚³‚ê‚邱‚ƂŁAÃ‚©‚ÉŽ~
     ‚Ü‚Á‚Ä‚µ‚Ü‚Á‚Ä‚¢‚Ü‚µ‚½; Œ»ÝA ipchains ‚Í ‚»‚̂悤‚ÈŽŽ‚݂ɑ΂µ‚āA
     ‘¼‚Ì•s“–‚ȏꍇ‚Æ“¯—l‚ɃGƒ‰[‚ð•Ô‚µ‚Ü‚·B

  8.1.  ƒNƒBƒbƒNƒŠƒtƒ@ƒŒƒ“ƒXˆê——

  [ Žå‚ɁAƒRƒ}ƒ“ƒhˆø”‚͑啶Žš‚ŁAƒIƒvƒVƒ‡ƒ“ˆø”‚͏¬•¶Žš‚Å‚·B]

  ’ˆÓ‚·‚ׂ«ˆê“_‚Æ‚µ‚āA ƒ}ƒXƒJƒŒ[ƒfƒBƒ“ƒO‚Í `-j MASQ' ‚Æ‹LÚ‚µ‚Ü‚·; ‚±
  ‚ê‚Í `-j ACCEPT' ‚Æ‘S‚­ˆÙ‚È‚èA‚Ü‚½ ipfwadm ‚̂悤‚È•›ŽŸ“IŒø‰Ê‚Æ‚µ‚Ä‚Í
  Žæ‚舵‚¢‚Ü‚¹‚ñB

  ================================================================
  | ipfwadm      | ipchains              | ’ˆÓ
  ----------------------------------------------------------------
  | -A [both]    | -N acct               | `acct' ƒ`ƒFƒCƒ“‚𐶐¬‚µA
  |              |& -I 1 input -j acct   | o—Í‚Æ“ü—̓pƒPƒbƒg‚ð‚»‚ê
  |              |& -I 1 output -j acct  | ‚ɒʉ߂³‚¹‚Ü‚·B
  |              |& acct                 |
  ----------------------------------------------------------------
  | -A in        | input                 | ƒ^[ƒQƒbƒg‚È‚µ‚̃‹[ƒ‹
  ----------------------------------------------------------------
  | -A out       | output                | ƒ^[ƒQƒbƒg‚È‚µ‚̃‹[ƒ‹
  ----------------------------------------------------------------
  | -F           | forward               | [ƒ`ƒFƒCƒ“]‚Æ‚µ‚Ä—p‚¢‚Ü‚·B
  ----------------------------------------------------------------
  | -I           | input                 | [ƒ`ƒFƒCƒ“]‚Æ‚µ‚Ä—p‚¢‚Ü‚·B
  ----------------------------------------------------------------
  | -O           | output                | [ƒ`ƒFƒCƒ“]‚Æ‚µ‚Ä—p‚¢‚Ü‚·B
  ----------------------------------------------------------------
  | -M -l        | -M -L                 |
  ----------------------------------------------------------------
  | -M -s        | -M -S                 |
  ----------------------------------------------------------------
  | -a policy    | -A [chain] -j POLICY  | (‚Å‚à -r ‚Æ -m ‚àŒ©‚ĉº
  |              |                       | ‚³‚¢).
  ----------------------------------------------------------------
  | -d policy    | -D [chain] -j POLICY  | (‚Å‚à -r ‚Æ -m ‚àŒ©‚ĉº
  |              |                       | ‚³‚¢).
  ----------------------------------------------------------------
  | -i policy    | -I 1 [chain] -j POLICY| (‚Å‚à -r ‚Æ -m ‚àŒ©‚ĉº
  |              |                       | ‚³‚¢).
  ----------------------------------------------------------------
  | -l           | -L                    |
  ----------------------------------------------------------------
  | -z           | -Z                    |
  ----------------------------------------------------------------
  | -f           | -F                    |
  ----------------------------------------------------------------
  | -p           | -P                    |
  ----------------------------------------------------------------
  | -c           | -C                    |
  ----------------------------------------------------------------
  | -P           | -p                    |
  ----------------------------------------------------------------
  | -S           | -s                    | 1ƒ|[ƒg‚Ü‚½‚̓Œƒ“ƒW‚É‘Î
  |              |                       | ‚µ‚Ä‚Ì‚Ý‹@”\‚µA•¡”‚Å
  |              |                       | ‚Í‚ ‚è‚Ü‚¹‚ñB
  ----------------------------------------------------------------
  | -D           | -d                    | 1ƒ|[ƒg‚Ü‚½‚̓Œƒ“ƒW‚É‘Î
  |              |                       | ‚µ‚Ä‚Ì‚Ý‹@”\‚µA•¡”‚Å
  |              |                       | ‚Í‚ ‚è‚Ü‚¹‚ñB
  ----------------------------------------------------------------
  | -V           | <none>                | -i [–¼‘O] ‚Å—p‚¢‚Ü‚·B
  ----------------------------------------------------------------
  | -W           | -i                    |
  ----------------------------------------------------------------
  | -b           | -b                    | Œ»ÝAŽÀÛ‚É‚Í2ƒ‹[ƒ‹‚ð
  |              |                       | ì¬‚µ‚Ü‚·B
  ----------------------------------------------------------------
  | -e           | -v                    |
  ----------------------------------------------------------------
  | -k           | ! -y                  | -p tcp ‚Æ‹¤‚ÉŽw’肵‚È‚¢
  |              |                       | ‚Æ‹@”\‚µ‚Ü‚¹‚ñB
  ----------------------------------------------------------------
  | -m           | -j MASQ               |
  ----------------------------------------------------------------
  | -n           | -n                    |
  ----------------------------------------------------------------
  | -o           | -l                    |
  ----------------------------------------------------------------
  | -r [redirpt] | -j REDIRECT [redirpt] |
  ----------------------------------------------------------------
  | -t           | -t                    |
  ----------------------------------------------------------------
  | -v           | -v                    |
  ----------------------------------------------------------------
  | -x           | -x                    |
  ----------------------------------------------------------------
  | -y           | -y                    | -p tcp ‚Æ‹¤‚ÉŽw’肵‚È‚¢
  |              |                       | ‚Æ‹@”\‚µ‚Ü‚¹‚ñB
  ----------------------------------------------------------------

  8.2.  ipfwadm ƒRƒ}ƒ“ƒh‚Ì•ÏŠ·—á

  ‹ŒƒRƒ}ƒ“ƒh: ipfwadm -F -p deny

  VƒRƒ}ƒ“ƒh: ipchains -P forward DENY

  ‹ŒƒRƒ}ƒ“ƒh: ipfwadm -F -a m -S 192.168.0.0/24 -D 0.0.0.0/0

  VƒRƒ}ƒ“ƒh: ipchains -A forward -j MASQ -s 192.168.0.0/24 -d 0.0.0.0/0

  ‹ŒƒRƒ}ƒ“ƒh: ipfwadm -I -a accept -V 10.1.2.1 -S 10.0.0.0/8 -D
  0.0.0.0/0

  VƒRƒ}ƒ“ƒh: ipchains -A input -j ACCEPT -i eth0 -s 10.0.0.0/8 -d
  0.0.0.0/0

  (ƒCƒ“ƒ^[ƒtƒF[ƒX‚ðƒAƒhƒŒƒX‚É‚æ‚Á‚ÄŽw’è‚·‚é‚̂Ƃ͈Ⴄ‚±‚Æ‚É’ˆÓ‚µ‚ĉº
  ‚³‚¢: ƒCƒ“ƒ^[ƒtƒF[ƒX–¼‚ð—p‚¢‚ĉº‚³‚¢B‚±‚̃}ƒVƒ“ã‚ł́A 10.1.2.1 ‚Í
  eth0 ‚É‘Š“–‚µ‚Ü‚·)B

  9.  •t˜^: ipfwadm-wrapper ƒXƒNƒŠƒvƒg‚ðŽg‚¤

  ipfwadm-wrapper ƒVƒFƒ‹ƒXƒNƒŠƒvƒg‚́Aipfwadm ‚ƃvƒ‰ƒOƒCƒ“‚É‚Ä’uŠ·‚³‚ê‚é
  ˆ×‚É‚ ‚èA ipfwadm 2.3a ‚Ƃ̉ºˆÊŒÝŠ·«‚ª‚ ‚è‚Ü‚·B

  —BˆêA‚Ç‚¤‚µ‚Ä‚àˆ—‚Å‚«‚È‚¢‹@”\‚Í `-V' ƒIƒvƒVƒ‡ƒ“‚Å‚·B‚±‚ꂪ—p‚¢‚ç‚ê
  ‚鎞‚́Aƒ[ƒjƒ“ƒO‚ªo—Í‚³‚ê‚Ü‚·B `-W' ƒIƒvƒVƒ‡ƒ“‚àŽg‚í‚ê‚é‚È‚çA
  `-V' ƒIƒvƒVƒ‡ƒ“‚Í–³Ž‹‚³‚ê‚Ü‚·B‘¼‚Ì“_‚ł́AƒXƒNƒŠƒvƒg‚Í ifconfig ‚ð—p
  ‚¢‚āAƒCƒ“ƒ^[ƒtƒF[ƒX–¼‚ðŠ„‚è“–‚Ä‚ç‚ê‚Ä‚¢‚éƒAƒhƒŒƒX‚©‚猩‚‚¯‚悤‚Æ‚µ
  ‚Ü‚·B‚à‚µ‚»‚ê‚ÉŽ¸”s‚·‚ê‚Î(—Ⴆ‚΃Cƒ“ƒ^[ƒtƒF[ƒX‚ªƒ_ƒEƒ“‚µ‚Ä‚¢‚éê
  ‡)AƒGƒ‰[ƒƒbƒZ[ƒW‚𔺂Á‚ďI—¹‚µ‚Ü‚·B

  ‚±‚̃[ƒjƒ“ƒO‚Í `-V' ‚ð `-W' ‚ɕύX‚·‚é‚©AƒXƒNƒŠƒvƒg‚Ì•W€o—Í‚ð
  /dev/null ‚É‘—‚ê‚Η}‚¦‚ç‚ê‚Ü‚·B

  ‚±‚̃XƒNƒŠƒvƒg‚̃~ƒX‚â ipfwadm ‚Æ‚Ì‘Šˆá“_‚ð”­Œ©‚µ‚½‚çA¥”ñ‚Æ‚àAƒoƒO
  ƒŒƒ|[ƒg‚ðŽ„‚É‰º‚³‚¢: ƒTƒuƒWƒFƒNƒg‚É "BUG-REPORT" ‚Ə‘‚¢‚āA
  rusty@linuxcare.com ˆ¶‚Ƀ[ƒ‹‚ð‰º‚³‚¢B‚¨ŽèŽ‚¿‚̌¢ ipfwadm ‚̃o[
  ƒWƒ‡ƒ“ (ipfwadm -h) ‚ƁA ipchains ‚̃o[ƒWƒ‡ƒ“ (ipchains --version)
  ‚ƁA ipfwadm wrapper ƒXƒNƒŠƒvƒg‚̃o[ƒWƒ‡ƒ“ (ipfwadm-wrapper
  --version) ‚ð—ñ‹“‚µ‚ĉº‚³‚¢B“¯Žž‚ɁA ipchains-save ‚̏o—Í‚à‘—‚Á‚ĉº‚³
  ‚¢B‹X‚µ‚­‚¨Šè‚¢‚µ‚Ü‚·B
  ‚±‚Ì ipfwadm-wrapper ƒXƒNƒŠƒvƒg‚ð ipchains ‚ƍ¬—p‚·‚éÛ‚ɂ́AŽ©ŒÈÓ”C
  ‚É‚Ä‚¨Šè‚¢‚µ‚Ü‚·B

  10.  •t˜^: ŽÓŽ«

  Michael Neuling ‚É‘½‚­‚ÌŠ´ŽÓ‚ð‚µ‚È‚¯‚ê‚΂Ȃè‚Ü‚¹‚ñB”Þ‚ÍŽ„‚Ì‚½‚߂ɍŏ‰
  ‚Ì IP ƒ`ƒFƒCƒ“‚̃R[ƒh‚ð‘‚¢‚Ä‚­‚ê‚Ü‚µ‚½B”ނ̃ŠƒUƒ‹ƒgƒLƒƒƒbƒVƒ…‚̃AƒC
  ƒfƒBƒA‚ð‹‘”Û‚µ‚½‚±‚Ƃɂ‚¢‚āA‚±‚±‚ÉŒöŽ®‚ɎӍߒv‚µ‚Ü‚·BŽÀ‚ÍŒã‚É Alan
  Cox ‚ª“¯‚¶ƒAƒCƒfƒBƒA‚ð’ñˆÄ‚µAŠÔˆá‚¢‚É‹C‚¢‚½Ž„‚ÍŒ‹‹ÇAŽÀ‘•‚É‚Æ‚è‚©‚©
  ‚邱‚Æ‚É‚È‚Á‚½‚Ì‚Å‚·B

  Alan Cox ‚Ì24ŽžŠÔ‘̐§‚̃[ƒ‹‚É‚æ‚é‹ZpƒTƒ|[ƒg‚ÆŒƒ—ã‚ÉŠ´ŽÓ‚µ‚Ü‚·B

  ipfw ‚Æ ipfwadm ‚̃R[ƒh‚̍ìŽÒ‘S‚Ä‚ÉŠ´ŽÓ‚µ‚Ü‚·B“Á‚É Jos VosB‹l‚ÌŒ¨
  ‚̏ã‚É—§‚¿A‚»‚µ‚Ä‘S‚ācB‚±‚ê‚Í Linus Torvalds ‚ƃJ[ƒlƒ‹‚⃆[ƒU[‹ó
  ŠÔ‚̃nƒbƒJ[‘S‚Ä‚É“–‚Ä‚Í‚Ü‚è‚Ü‚·B

  (–ó’:u‹l‚ÌŒ¨‚̏ã‚É—§‚v‚Æ‚¢‚¤‚̂́Aƒjƒ…[ƒgƒ“‚ªŒ¾‚Á‚½—L–¼‚ÈŒ¾—t‚Å
  ‚·BŽ„‚ª–œ—Lˆø—Í‚Ì”­Œ©‚Æ‚¢‚¤‹ÆÑ‚𐬂µ‹‚°‚ç‚ꂽ‚̂́A‹l (æ‹ìŽÒ) ‚½
  ‚¿‚ÌŒ¨‚̏ã‚É—§‚Á‚Ä‚¢‚½‚©‚ç‚É‚·‚¬‚È‚¢A‚ƁB“ú–{l‚à^‚ÁÂ‚ÌŒª÷‚Ì”ü“¿‚Å
  ‚·‚ˁB)

  ”O“ü‚è‚ȃx[ƒ^ƒeƒXƒ^[‚ƃoƒOƒnƒ“ƒ^[‚ÉŠ´ŽÓ‚µ‚Ü‚·A“Á‚É Jordan
  Mendelson, Shaw Carruthers, Kevin Moule, Dr. Liviu Daia, Helmut Adams,
  Franck Sicard, Kevin Littlejohn, Matt Kemner, John D. Hardin, Alexey
  Kuznetsov, Leos Bitto, Jim Kunzman, Gerard Gerritsen, Serge Sivkov,
  Andrew Burgess, Steve Schmidtke, Richard Offer, Bernhard Weisshuhn,
  Larry Auton, Ambrose Li, Pavel Krauz, Steve Chadsey, Francesco
  Potorti`, Alain Knaff, Casper Boden-Cummins, ‚»‚µ‚Ä Henry Hollenberg
  ‚ɁB

  10.1.  –|–ó

  –|–ó‚·‚él‚ÍŽÓŽ«ƒy[ƒW‚Ì–`“ª‚É–|–óŽÒˆê——‚ðŒfÚ‚µ‚ĉº‚³‚¢B—Ⴆ‚Î: `Ž„
  ‚̉pŒê‚©‚ç‘S‚Ă𐳊m‚É–|–󂵂Ă­‚ꂽXXX‚³‚ñ‚ÉŠ´ŽÓ‚µ‚Ü‚·B' ‚»‚µ‚āAŽ„
  ‚ª‚±‚Ì•¶‘‚ÉŠÜ‚ß‚ç‚ê‚é—l‚ɁA‚ ‚È‚½‚Ì–|–ó•¶‚ð‹³‚¦‚ĉº‚³‚¢B

  Arnaud Launay, asl@launay.org:
  http://www.freenix.fr/unix/linux/HOWTO/IPCHAINS-HOWTO.html
  <http://www.freenix.fr/unix/linux/HOWTO/IPCHAINS-HOWTO.html>

  Giovanni Bortolozzo, borto@pluto.linux.it:
  http://www.pluto.linux.it/ildp/HOWTO/IPCHAINS-HOWTO.html
  <http://www.pluto.linux.it/ildp/HOWTO/IPCHAINS-HOWTO.html>

  Herman Rodríguez, herman@maristas.dhis.org:
  http://netfilter.kernelnotes.org/ipchains/spanish/HOWTO.html
  <http://netfilter.kernelnotes.org/ipchains/spanish/HOWTO.html>

  JF Project, jf@linux.or.jp: http://www.linux.or.jp/JF/JFdocs/IPCHAINS-
  HOWTO.html <http://www.linux.or.jp/JF/JFdocs/IPCHAINS-HOWTO.html>

  11.  “ú–{Œê–ó‚ɂ‚¢‚Ä

  “ú–{Œê–ó ‰”Å: 2000”N 11ŒŽ 21“ú
  JF Project uƒ`[ƒ€ ipchainsv –|–óŽÒˆê——(ŒhÌ—ªA50‰¹‡):
  o  ‰Á“¡‘å“T <daisuke@terra.dti.ne.jp> 7Í

  o  Œã“¡‰ë° <magotou@fubyshare.gr.jp> 2,3Í

  o  ’†’JçŠG <jeanne@mbox.kyoto-inet.or.jp> 5,6Í

  o  “ތÉ®Lº <nagoya@cc.hit-u.ac.jp> 1`4Í

  o  ¼“c—zˆê <yoh@coolmail.net> 1,4,8`10Í‹y‚Ñ‚Ü‚Æ‚ß

  ‚±‚Ì•¶‘‚ð–|–ó‚·‚é‚É‚ ‚½‚èAŽRX_K‚³‚ñ <h-yamamo@db3.so-net.ne.jp>
  ‚Ì Linux 2.4 Packet Filtering HOWTO “ú–{Œê–ó
  <http://www.linux.or.jp/JF/JFdocs/packet-filtering-HOWTO.html> ‚©‚瑽
  ‚­‚ðˆø—p’v‚µ‚Ü‚µ‚½B‚Ü‚½AÔ¼“O‚³‚ñ <akamatsu@kobedenshi.ac.jp> ‚́A
  LinuxJAPAN ‚Ö‚Ì“Še‹LŽ–‚ðŽQl‚É‚³‚¹‚Ä’¸‚«‚Ü‚µ‚½B

  ‚±‚Ì•¶‘‚ð–|–ó‹y‚ѕҏW‚·‚é‚É‚ ‚½‚èAˆÈ‰º‚Ì•ûX‚©‚çƒAƒhƒoƒCƒX‚𒸂«‚Ü‚µ
  ‚½B(50‰¹‡)
  –{“–‚É‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½B

  o  ˆÉ“¡—Sˆê‚³‚ñ <kade@kadesoft.com>

  o  ‰Á–Î’q”V‚³‚ñ <kto@interlink.or.jp>

  o  “ú‰º•”—zˆê‚³‚ñ <void@merope.pleiades.or.jp>

  o  ŽÄ“c®–¾‚³‚ñ <shibata@luky.org>

  o  £ŒËŒû’‚³‚ñ <setzer@mx3.tiki.ne.jp>

  o  ç’U—TŽi‚³‚ñ <ysenda@pop01.odn.ne.jp>

  o  •ˆäLŒõ‚³‚ñ <takei@webmasters.gr.jp>

  o  ¼“c˜i‚³‚ñ <wnishida@skyfree.org>

  o  …Œ´•¶‚³‚ñ <mizuhara@acm.org>

  o  ŽRX_K‚³‚ñ <h-yamamo@db3.so-net.ne.jp>