рдлреНрд░реАрдмреАрдПрд╕рдбреА рдкрд░ рдПрдирдПрдЯреА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдФрд░ рддреБрд▓рдирд╛

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдиреЗрдЯрдмреАрдПрд╕ рдХреЛ рдлреНрд░реАрдмреАрдПрд╕рдбреА рдУрдПрд╕ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рдЙрджрд╛рд╣рд░рдг рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдФрд░ рдХреБрдЫ рддрд░реАрдХреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдЬреЛ рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред



рдЖрд░рдВрдн рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

NAT (рдЕрдВрдЧреНрд░реЗрдЬреА рд╕реЗред рдиреЗрдЯрд╡рд░реНрдХ рдПрдбреНрд░реЗрд╕ рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди - "рдиреЗрдЯрд╡рд░реНрдХ рдПрдбреНрд░реЗрд╕ рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди") рдЯреАрд╕реАрдкреА / рдЖрдИрдкреА рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдПрдХ рддрдВрддреНрд░ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЯреНрд░рд╛рдВрдЬрд┐рдЯ рдкреИрдХреЗрдЯ рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдЬрд┐рд╕рдХрд╛ рдирд╛рдо IP Masquerading, Network Masquerading рдФрд░ Native Address Translation рд╣реИред



рд╡рд┐рдЪрд╛рд░ рдХрд┐рдП рдЧрдП рд╡рд┐рдХрд▓реНрдк:

- рджрд╛рдирд╡ рдирд╛рде

- IPFilter (ipnat)

- рдкреАрдПрдл рдирдЯ

- ng_nat

- ipfw рдиреЗрдЯ (рдХрд░реНрдиреЗрд▓ рдиреЗрдЯ)





рдиреИрдЯ рдХреЗ рд╕рд╛рде рдиреЗрдЯ


рд╣реИрдВрдбрдмреБрдХ рд╕реЗ:

FreeBSD рдореЗрдВ рдиреЗрдЯрд╡рд░реНрдХ рдПрдбреНрд░реЗрд╕ рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди рдбреЗрдореЙрди, рдЬрд┐рд╕реЗ рдЖрдорддреМрд░ рдкрд░ рдиреИрдЯрдб (8) рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдПрдХ рдбреЗрдорди рд╣реИ рдЬреЛ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдЖрдИрдкреА рдкреИрдХреЗрдЯреНрд╕ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдкреНрд░реЗрд╖рдХ рдкрддреЗ рдХреЛ рд╕реНрдерд╛рдиреАрдп рдорд╢реАрди рдкрддреЗ рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЙрди рдкреИрдХреЗрдЯреЛрдВ рдХреЛ рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдкреИрдХреЗрдЯ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдмрджрд▓ рджреЗрддрд╛ рд╣реИред рдПрдирдПрдЯреАрдбреА рдкреНрд░реЗрд╖рдХ рдХреЗ рдЖрдИрдкреА рдкрддреЗ рдФрд░ рдкреЛрд░реНрдЯ рдХреЛ рдмрджрд▓рдХрд░ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдЬрдм рдбреЗрдЯрд╛ рд╡рд╛рдкрд╕ рдкреНрд░рд╛рдкреНрдд рд╣реЛ рдЬрд╛рдП, рддреЛ рдпрд╣ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рдХреЗ рд╕реНрд░реЛрдд рдХрд╛ рд╕реНрдерд╛рди рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рдЙрд╕ рдорд╢реАрди рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╢реБрд░реВ рдореЗрдВ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рдерд╛ред



рдиреИрдЯ рдХреЛ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ipfw рдХреА рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИред

рдХреЛрд░ рдореЗрдВ:

# Ipfw рд╕рдорд░реНрдерди

рд╡рд┐рдХрд▓реНрдк IPFIREWALL

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_VERBOSE

рд╡рд┐рдХрд▓реНрдк "IPFIREWALL_VERBOSE_LIMIT = 100"

# рдиреЗрдЯ рдХреЗ рд▓рд┐рдП рдЗрдВрдЯрд░рдлреЗрд╕ рдореЗрдВ рдЖрдиреЗ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЯ

рд╡рд┐рдХрд▓реНрдк IPDIVERT



/Etc/rc.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

Gateway_enable = "рд╣рд╛рдБ"

рдпрд╛ /etc/sysctl.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

net.inet.ip.forwarding = 1ред



em0 - рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕

192.168.0.0/24 - рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ

200.200.200.200 - рдмрд╛рд╣рд░реА рдкрддрд╛



/Etc/rc.conf рдореЗрдВ рднреА рдЬреЛрдбрд╝реЗрдВ:

natd_enable = "YES"

natd_interface = "em0"

natd_flags = ""



рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреЗ рд▓рд┐рдП рдбрд╛рдпрд╡рд░реНрдЯ рдХреЗ рдирд┐рдпрдо рдЬреЛрдбрд╝реЗрдВ:

/ sbin / ipfw 192.168.0.0/24 рд╕реЗ рдбрд╛рдпрд╡рд░реНрдЯ рдиреИрдЯрдб рдЖрдИрдкреА рдХреЛ em0 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░ рдЬреЛрдбрд╝реЗрдВ

/ sbin / ipfw рдХрд┐рд╕реА рднреА 200 рд╕реЗ 200.200.200.200 рдореЗрдВ em0 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдпрд╡рд░реНрдЯ natd ip рдЬреЛрдбрд╝реЗрдВ



рдпрд╣ рд╣реИрдВрдбрдмреБрдХ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдореЗрдВ рд╣реИред



IPFilter (ipnat) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ NAT


рдХреЛрд░ рдореЗрдВ:

рд╡рд┐рдХрд▓реНрдк IPFILTER

рд╡рд┐рдХрд▓реНрдк IPFILTER_LOG

рдпрд╛ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдХрд░реНрдиреЗрд▓ рдХреЛ рд╕реНрдкрд░реНрд╢ рди рдХрд░реЗрдВред



/Etc/rc.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

Gateway_enable = "рд╣рд╛рдБ"

рдпрд╛ /etc/sysctl.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

net.inet.ip.forwarding = 1ред



/Etc/rc.conf рдореЗрдВ рднреА рдЬреЛрдбрд╝реЗрдВ:

ipnat_enable = "YES" # ipnat рдЪрд╛рд▓реВ рдХрд░реЗрдВ

ipnat_program = "/ sbin / ipnat" # ipnat рдкрде

ipnat_rules = "/ etc / ipnat.rules" # рдирд┐рдпрдо

ipnat_flags = "" # рдХрд┐рд╕ рдкреИрд░рд╛рдореАрдЯрд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ



Syslog.conf рдРрдб рдореЗрдВ рд▓реЙрдЧ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП:

рд╕реНрдерд╛рдиреАрдп режред * / рд╕рд╡рд░реНрдг / рд╡рд┐рдкреНрд▓рд╡ / рд╡рд┐рдкреНрд▓рд╡

рдФрд░ IPFilter рдЪрд▓рд╛рдПрдВ - IP рдХреА рдирд┐рдЧрд░рд╛рдиреА рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЗ рд╕рд╛рде -рд╡реНрдпрд╛рд╕ рдХреБрдВрдЬреА

-D - a daemon рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдирд╛

-рд╡ - рдбреНрд░рд┐рд▓ рдбрд╛рдЙрди

-a - рд╕рднреА IPFilter рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░реЗрдВ

-s - syslog рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ



рдЙрджрд╛рд╣рд░рдг:



рд╣реИрдВ:

em0 - рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕

192.168.0.0/24 - рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ

200.200.200.200 - рдмрд╛рд╣рд░реА рдкрддрд╛



рдлрд┐рд░ рдиреЗрдЯ рдХреЗ рд▓рд┐рдП рдирд┐рдпрдореЛрдВ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдЗрд╕ рддрд░рд╣ рджрд┐рдЦреЗрдЧрд╛:

рдирдХреНрд╢рд╛ em0 192.168.0.0/24 рд╕реЗ рдХрд┐рд╕реА рднреА -> 200.200.200.200/32



рдпрд╛ рдЧрдВрддрд╡реНрдп рдкрддреЗ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛:

рдорд╛рдирдЪрд┐рддреНрд░ em0 192.168.0.0/24 -> 200.200.200.200/32



рдпрджрд┐ рдкрддрд╛ рдЧрддрд┐рд╢реАрд▓ рд╣реИ, рддреЛ рдЖрдк рдпрд╣ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

рдорд╛рдирдЪрд┐рддреНрд░ em0 192.168.0.0/24 -> 0.0.0.0/32



Ipnat рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдХрдорд╛рдВрдб:

рдкреБрдирд░рд╛рд░рдВрдн рдХрд░реЗрдВ:

/etc/rc.d/ipnat рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░реЗрдВ

рдиреЗрдЯ рд░реЛрдмреЛрдЯ рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рдЖрдБрдХрдбрд╝реЗ:

ipnat тАУs

рд╕рдХреНрд░рд┐рдп рдирд┐рдпрдореЛрдВ рдХреА рд╕реВрдЪреА рдФрд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рд╕рдХреНрд░рд┐рдп рд╕рддреНрд░реЛрдВ рдХреА рд╕реВрдЪреА:

ipnat -l

рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рдлрд┐рд░ рд╕реЗ рдЪрд▓рд╛рдПрдБ:

ipnat -CF -f /etc/ipnat.rules

-рд╕реА - рдирд┐рдпрдо рддрд╛рд▓рд┐рдХрд╛ рдХреЛ рд╕рд╛рдл рдХрд░рддрд╛ рд╣реИред

-F - рдЕрдиреБрд╡рд╛рдж рддрд╛рд▓рд┐рдХрд╛ рд╕реЗ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИред

рдЖрдк рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ ipnat рдФрд░ IPFilter рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ:

ipnat (1), ipnat (5), ipnat (8), ipf (5), ipf (8), ipfstat (8), ipftest (1), ipmon (8)

рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдБ ред



рдкреАрдПрдлрд╝ рдХреЗ рд╕рд╛рде рдиреЗрдЯ


рдХреЛрд░ рдореЗрдВ:

рдбрд┐рд╡рд╛рдЗрд╕ pf # PF OpenBSD рдкреИрдХреЗрдЯ-рдлрд╝рд┐рд▓реНрдЯрд░ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ

рдбрд┐рд╡рд╛рдЗрд╕ pflog # Pf рд▓реЙрдЧ рд╕рдкреЛрд░реНрдЯ



/Etc/rc.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

Gateway_enable = "рд╣рд╛рдБ"

рдпрд╛ /etc/sysctl.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

net.inet.ip.forwarding = 1ред



/Etc/rc.conf рдореЗрдВ рднреА рдЬреЛрдбрд╝реЗрдВ:

pf_enable = "YES"

pf_rules = "/ etc / pf.conf"

pf_program = "/ sbin / pfctl"

pf_flags = ""

pflog_enable = "YES"

pflog_logfile = "/ var / log / pf.log"

pflog_program = "/ sbin / pflogd"

pflog_flags = ""



рд╕реНрд╡рдпрдВ рдирд┐рдпрдо рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:

em0 - рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕

192.168.0.0/24 - рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ

200.200.200.200 - рдмрд╛рд╣рд░реА рдкрддрд╛



/Etc/pf.conf рдореЗрдВ:

192.168.0.0/24 рд╕реЗ em0 рдкрд░ nat рдХрд┐рд╕реА рднреА -> (em0)



NAT_nat рдХреЗ рд╕рд╛рде NAT


рдХреЛрд░ рдореЗрдВ:

рд╡рд┐рдХрд▓реНрдк NETGRAPH

рд╡рд┐рдХрд▓реНрдк NETGRAPH_IPFW

рд╡рд┐рдХрд▓реНрдк LIBALIAS

рд╡рд┐рдХрд▓реНрдк NETGRAPH_NAT

... рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдЕрдиреНрдп рдиреЗрдЯрдЧреНрд░рд╛рдл рд╡рд┐рдХрд▓реНрдк



рдпрд╛ рдмрд╕ рдореЙрдбреНрдпреВрд▓ рд▓реЛрдб рдХрд░реЗрдВ:

/ sbin / kldload /boot/kernel/ng_ipfw.ko

/ sbin / kldload /boot/kernel/ng_nat.ko



em0 - рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕

192.168.0.0/24 - рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ

200.200.200.200 - рдмрд╛рд╣рд░реА рдкрддрд╛



NAT рдиреЛрдб рдмрдирд╛рдирд╛:

ngctl mkpeer ipfw: nat 60 out

ngctl рдирд╛рдо ipfw: 60 рдиреЗрдЯ

ngctl рдХрдиреЗрдХреНрдЯ ipfw: nat: 61 рдЗрди

ngctl msg nat: setaliasaddr 200.200.200.200

Ipfw рдореЗрдВ, рдмрдирд╛рдП рдЧрдП рдиреЛрдб рдореЗрдВ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЗрдиреЗрдВ рдЬреЛрдбрд╝реЗрдВ:

/ sbin / ipfw рдХрд┐рд╕реА рднреА ремрез рд╕реЗ реирежреж.реирежреж.реирежреж.реирежреж рддрдХ рд╕рднреА рдиреЗрдЯрдЧреНрд░рд╛рдл рдХреЛ em0 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ

/ sbin / ipfw рд╕рднреА рдиреЗрдЯрдЧреНрд░рд╛рдл 60 рдХреЛ 192.168.0.0/24 рд╕реЗ em0 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рд╕реА рднреА рдмрд╛рд╣рд░ рдЬреЛрдбрд╝реЗрдВ

рдЖрдЧреЗ

sysctl net.inet.ip.fw.one_pass = 0



рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рд╕рднреА рдЪреАрдЬрд╝реЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдирд┐рдХрд╛рд▓реЗрдВ рдФрд░ рдЗрд╕реЗ рдСрдЯреЛрд▓рдб рдХреЗ рд▓рд┐рдП рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рдЕрдзрд┐рдХрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде /usr/local/etc/rc.d рдореЗрдВ рдбрд╛рд▓реЗрдВред



рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдпрд╣рд╛рдБ ред



NAT ipfw рдиреЗрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ


FreeBSD рд╕рдВрд╕реНрдХрд░рдг 7.0 рдХреЗ рдмрд╛рдж рд╕реЗ ipfw nat рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ рд╣реИ

рдХреЛрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП:

рд╡рд┐рдХрд▓реНрдк IPFIREWALL

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_DEFAULT_TO_ACCEPT

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_FORWARD

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_VERBOSE

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_VERBOSE_LIMIT = 50

рд╡рд┐рдХрд▓реНрдк IPFIREWALL_NAT

рд╡рд┐рдХрд▓реНрдк LIBALIAS



/Etc/rc.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ

firewall_enable = "YES"

firewall_nat_enable = "YES"

firewall_type = "/ etc / рдлрд╝рд╛рдпрд░рд╡реЙрд▓"

Gateway_enable = "YES"



/Etc/sysctl.conf рдореЗрдВ рдЬреЛрдбрд╝реЗрдВ:

net.inet.ip.fw.one_pass = 1



em0 - рдмрд╛рд╣рд░реА рдЗрдВрдЯрд░рдлрд╝реЗрд╕

192.168.0.0/24 - рдЖрдВрддрд░рд┐рдХ рдиреЗрдЯрд╡рд░реНрдХ

200.200.200.200 - рдмрд╛рд╣рд░реА рдкрддрд╛



рдПрдХ рдЙрджрд╛рд╣рд░рдг:



/ sbin / ipfw nat 1 config рд▓реЙрдЧ рдЬреЛрдбрд╝реЗрдВ рдЕрдЧрд░ em0 рдлрд┐рд░ рд╕реЗ рд╕реЗрдЯ рдХрд░реЗрдВ

/ sbin / ipfw nat 1 ip рдХреЛ 192.168.0.0/24 рд╕реЗ рддрд╛рд▓рд┐рдХрд╛ 0 рдореЗрдВ рдирд╣реАрдВ (10 \) рдЬреЛрдбрд╝ рджреЗрдВ

/ sbin / ipfw em0 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рд╕реА рднреА 200.200.200.200 рд╕реЗ nat 1 ip рдЬреЛрдбрд╝реЗрдВ

рдЬрд╣рд╛рдВ рддрд╛рд▓рд┐рдХрд╛ 10 - рдиреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд╣реАрдВ рдЬрд╛рддреА рд╣реИ



рдХреБрдЫ рдЖрдБрдХрдбрд╝реЗ рдЗрд╕ рддрд░рд╣ рджреЗрдЦреЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

ipfw nat 1 рд╢реЛ



рдереЛрдбрд╝реА рддреБрд▓рдирд╛


рдпрд╣ рдХрд╣рд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ ipfw, natd, ipf, ipnat рд╕рд╛рде рдореЗрдВ рдорд┐рд▓рддреЗ рд╣реИрдВред рдЙрд╕реА рд╕рдордп, рдЖрдкрдХреЛ рдлрд┐рд▓реНрдЯрд░ рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЛ рдпрд╛рдж рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: рдкрд╣рд▓реЗ рдореИрдЪ рд╕реЗ рдЖрдИрдкреАрдПрдлрдбрдмреНрд▓реНрдпреВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдИрдкреАрдПрдл (рдирд┐рдпрдо рдореЗрдВ рддреНрд╡рд░рд┐рдд рд╡рд┐рдХрд▓реНрдк рдХреЗ рдмрд┐рдирд╛) - рдЕрдВрддрд┐рдо рджреНрд╡рд╛рд░рд╛ред рдареАрдХ рд╣реИ, рдЖрдкрдХреЛ рд╣рдореЗрд╢рд╛ рдЙрд╕ рдХреНрд░рдо рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд┐рд╕рдореЗрдВ рдкреИрдХреЗрдЯ рдлрд╝рд┐рд▓реНрдЯрд░ рд╕реЗ рдЧреБрдЬрд░рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдХрд░реНрдиреЗрд▓ рдореЗрдВ ipf рд╕рдкреЛрд░реНрдЯ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХреЗ рдмрд╛рд╡рдЬреВрдж рдХрд┐ ipfw рдХреИрд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рд╕рднреА рдкреИрдХреЗрдЯ ipf рдирд┐рдпрдореЛрдВ рд╕реЗ рдЧреБрдЬрд░реЗрдЧрд╛, рдФрд░ ipfw рдХреЛ рдХреЗрд╡рд▓ рд╡рд╣реА рдкреНрд░рд╛рдкреНрдд рд╣реЛрдЧрд╛ рдЬреЛ рд╡рд╣ рдЗрдирдкреБрдЯ рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдЧрд╛ред рдпрджрд┐ ipfw рдХреЛ рдХрд░реНрдиреЗрд▓ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ ipf рдХреЛ рдПрдХ рдореЙрдбреНрдпреВрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд▓реЛрдб рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддреЛ ipfw рдкреНрд░рдзрд╛рдирддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ред



рдпрджрд┐ рд╣рдо рдЕрдВрддрд░ рдФрд░ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдиреЛрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:



natd:

- рдЬрдм рдЯреНрд░реИрдлрд┐рдХ 40-50 рдореЗрдЧрд╛рдмрд┐рдЯ рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ рддреЛ рдбреЗрд╕ рдЕрдкреНрд░рднрд╛рд╡реА рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ

- рдПрдХ рджрд╛рдирд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдПрд╣рд╕рд╛рд╕

- рдХрдИ рдЗрдВрдЯрд░рдлреЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдХрдард┐рдирд╛рдЗрдпрд╛рдБ

+ рдЖрд╕рд╛рди рд╕реЗрдЯрдЕрдк

+ рдХрд╛рд░реНрдпрд╢реАрд▓рддрд╛, рд▓рдЪреАрд▓рд╛рдкрди



iPnat:

+ рдЖрд╕рд╛рди рд╕реЗрдЯрдЕрдк

+ "рдирд┐рдХрдЯрддрд╛" рдХреЛрд░ рдХреЗ рд▓рд┐рдП

- рдмрд╣реБрдд рднрд╛рд░реА рднрд╛рд░ рдХреЗ рд▓рд┐рдП, рдЯреНрдпреВрдирд┐рдВрдЧ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ





ng_nat:

- рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЬрдЯрд┐рд▓ рд╕реЗрдЯрдЕрдк

- рдкрддрд╛ рдирд╣реАрдВ рдХреИрд╕реЗ redirect_port

+ рдХрд░реНрдиреЗрд▓ рдореЗрдВ libalias рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛

+ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдХреБрдЫ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрд╛ рдЙрдкрднреЛрдЧ рдХрд░рддрд╛ рд╣реИ



рдЗрдкрдлрд╡ рдирдЯ:

+ рдЧрддрд┐

+ рд▓рдЪреАрд▓рд╛рдкрди

+ рдХрд░реНрдиреЗрд▓ рдореЗрдВ libalias рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛

рдирд╛рдЗрдЯрдлрд╝реНрд▓ рдпреВрдкреАрдбреА :

- рдЖрдо рддреМрд░ рдкрд░ рдкреВрд▓ рдХреЗ рдиреАрдЪреЗ рд╕реЗ рдПрдХ рдЯрди рдЙрдкрдирд╛рдо рдХреЗ рдмрд┐рдирд╛ рдЦреАрдВрдЪрдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрдерддрд╛

- рд╕реНрд▓рд╛рдЗрди рдЖрдБрдХрдбрд╝реЗ

+ рдЖрдЦрд┐рд░рдХрд╛рд░ рдмрд╣рдирд╛ рдмрдВрдж рд╣реЛ рдЧрдпрд╛

+ рджреВрд╕рд░реЛрдВ рдХреЗ рд╡рд┐рдкрд░реАрдд, рдпрд╣ рдмреЙрдХреНрд╕ рдХреЗ рд╕рдХреНрд░рд┐рдп рдПрдлрд╝рдЯреАрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдЬреЛ рдПрдлрд╝рдЯреАрдкреА рдкреНрд░реЙрдХреНрд╕реА рдХреЛ рдкрд╛рд╕ рдореЗрдВ рдирд╣реАрдВ рд░рдЦрдиреЗ рджреЗрддрд╛ рд╣реИ

+ рдмрдЪрдкрди рдХреА рдмреАрдорд╛рд░рд┐рдпреЛрдВ рд╕реЗ рдЧреНрд░рд╕реНрдд рдирд╣реАрдВ рд╣реИ рдЬреИрд╕реЗ рдХрд┐ рдиреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╕рд╛рде рдкреАрдкреАрдЯреА рдХреЗ рд╕рд╛рде рдЪреБрдЯрдХреБрд▓реЗ



Pf рдирдЯ:

+ рдЧрддрд┐

+ рдирд┐рдпрдореЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдореИрдХреНрд░реЛрдЬрд╝ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛

- smp рдХреА рд╕рдорд╕реНрдпрд╛



рдирд┐рд╖реНрдХрд░реНрд╖


рдореИрдВ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдЙрдкрд░реЛрдХреНрдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рдореЗрдВ рд╕реЗ рдХрд┐рд╕реА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рд╡рд┐рд╖рдп рдереЛрдбрд╝рд╛ рдкрд╡рд┐рддреНрд░ рд╣реИ, рдФрд░ рдкрд╛рдардХреЛрдВ рдХреА рд░рд╛рдп рдореЗрд░реЗ рд╕рд╛рде рдореЗрд▓ рдирд╣реАрдВ рдЦрд╛ рд╕рдХрддреА рд╣реИред рдореИрдВрдиреЗ рдмрд╕ рд╡рд┐рдиреНрдпрд╛рд╕ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдФрд░ рдлреНрд░реАрдмреАрдПрд╕рдбреА рдкрд░ рдПрдирдПрдЯреА рд╕рдВрдЧрдарди рдХреЗ рдХрдИ рддрд░реАрдХреЛрдВ рдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВрдиреЗ NAT рднрд╛рдЧ рдХрд╛ рд╡рд░реНрдгрди рдирд╣реАрдВ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдпрд╣рд╛рдБ рд╣реИ ред



All Articles