рдкрд┐рдЫрд▓реЗ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВрдиреЗ рдЗрд╕ рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рддрд░реАрдХреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдЕрдм isc-dhcpd рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреАред
рдЕрддреНрдпрдзрд┐рдХ рд▓реЛрдб рд╡рд╛рд▓реЗ рдЕрддрд┐рдерд┐ рд╡рд╛рдИ-рдлрд╛рдИ рдиреЗрдЯрд╡рд░реНрдХ рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп, рдЙрди рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдФрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реЛрддреА рд╣реИ рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдмрд╛рд╣рд░реА рд╕реЗрд╡рд╛рдУрдВ рддрдХ рдЙрдиреНрдирдд рдкрд╣реБрдВрдЪ рд╣реЛрддреА рд╣реИред рдореИрдХ рдкрддреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдХрд▓реНрдк рдЕрднрд┐рдЧрдо рдирд┐рдпрдВрддреНрд░рдг рд╣реИ (dhcpd.conf рдореЗрдВ рдкрддреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рджрд░реНрдЬ рдХрд░рдирд╛), рд▓реЗрдХрд┐рди рдЬреИрд╕рд╛ рдХрд┐ рдЕрднреНрдпрд╛рд╕ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рдпрд╣ рдХрд╛рдлреА рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдЙрдирдХреЗ рдСрдкрд░реЗрд╢рди рдореЗрдВ рджрд░реНрдЬ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдХрд╛рд░рдг, рдкрдЯреНрдЯреЗ рдХреА рдЕрд╡рдзрд┐ рдХреЛ рдХрдо рдХрд░рдиреЗ рдпрд╛ рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдЖрдИрдкреА рдкрддреЗ рдХреА рд╕реАрдорд╛ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╡рд╛рдВрдЫрд┐рдд рдореЗрдЬрдмрд╛рди рдХреЗ рд▓рд┐рдП рдзреАрдореА рдЦреЛрдЬ рд╣реЛрддреА рд╣реИред рдореИрдХ рдкрддреЗ рдХреА рдирд┐рдЧрд░рд╛рдиреА рдХрд░рдирд╛ рдФрд░ рд╕реНрдереИрддрд┐рдХ рдкрддреЗ рдЬрд╛рд░реА рдХрд░рдиреЗ рд╕реЗ рдХреБрдЫ рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдЖрдкрдХреА рдХрдВрдкрдиреА рдореЗрдВ 2 рд╡рд╛рдИ-рдлрд╛рдИ рд╕рдмрдиреЗрдЯ рд╣реИрдВ, рдЬреЛ рджреЛ рд╡рд░реНрдЪреБрдЕрд▓ рдиреЗрдЯрд╡рд░реНрдХ (рд╡реАрдПрд▓рдПрдПрди) рд╣реИрдВ рдЬреЛ рдорд▓реНрдЯреА-рдПрдХреНрд╕реЗрд╕ рдкреЙрдЗрдВрдЯ рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдПрдХ рд╡рд╛рдИ-рдлрд╛рдИ рдиреЗрдЯрд╡рд░реНрдХ рдЦреБрд▓рд╛ рд╣реИ, рдФрд░ рджреВрд╕рд░рд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕рдВрд░рдХреНрд╖рд┐рдд рд╣реИред
рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдбрд┐рд╡рд╛рдЗрд╕ рдореИрдХ рдПрдбреНрд░реЗрд╕ рдХреЛ рдПрдХ рд╕рд╛рде 2 рдкреВрд▓ рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рдкреНрд░рд╢рд╛рд╕рди рд╕рдорд╕реНрдпрд╛рдУрдВ рдореЗрдВ рднреНрд░рдо рд╣реЛрддрд╛ рд╣реИред
рдЗрд╕рдХреЗ рдЖрдЧреЗ рдХреЗ рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдкрд╛рдардХ рдХреЛ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдмреБрдирд┐рдпрд╛рджреА рд╕рдордЭ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреАрдПрдл, рд╕реНрдХреНрд╡реАрдб, рдЖрдИрдПрд╕рд╕реА- dhcpd рдФрд░ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред
рд░рд╛рд╕реНрддрд╛ рдХреНрдпрд╛ рд╣реИ?
рд╕рдорд╛рдзрд╛рди рдереЛрдбрд╝рд╛ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИред рд╕реНрд╡рдпрдВ dhcpd рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд╣реБрдВрдЪ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ?
рдЗрд╕рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ isc-dhcpd рд╣реИ, рдРрд╕реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╣реИ, рдЬрд┐рдиреНрд╣реЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рдкрд░ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдкрд░ рд╕реЗрд╡рд╛рдУрдВ рддрдХ рдкрд╣реБрдБрдЪ рдЦреЛрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдФрд░ рдЬрдм рд╡реЗ рдЧрд╛рдпрдм рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ рддреЛ рдкрд╣реБрдБрдЪ рдХреЛ рдЕрдХреНрд╖рдо рдХрд░ рджреЗрддреЗ рд╣реИрдВред
рд╣рдореЗрдВ рдЕрдкрдиреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЗ рдореИрдХ рдкрддреЗ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрдирдХреЗ рддреНрд╡рд░рд┐рдд рдЬреЛрдбрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡реЗрдм-рдереВрдерди, рдПрдХ рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдЬрд┐рд╕реЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдФрд░ рдереЛрдбрд╝рд╛ рдзреИрд░реНрдп рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд┐рдП рдмрд┐рдирд╛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдореЗрдВ рдЕрдкрдирд╛ рд╕рд┐рд╕реНрдЯрдо рддреИрдпрд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдореИрдВ FreeBSD рдХрд╛ рд╕рдорд░реНрдердХ рд╣реВрдВ рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕ рдкрд░ рд╕рднреА рдореБрдЦреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдХрд░рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рд╕рд┐рд╕реНрдЯрдо рдШрдЯрдХреЛрдВ рдореЗрдВ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдирд┐рдпрдВрддреНрд░рдг рд╣реЛрддрд╛ рд╣реИред рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдо
pf рдФрд░
pftabled рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдкреАрдПрдл рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рджреВрд╕рд░реЛрдВ рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреВрд▓ рд░реВрдк рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕рдореЗрдВ рдбрд╛рдпрдирд╛рдорд┐рдХ рдЯреЗрдмрд▓ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореВрд▓ рдирд┐рдпрдореЛрдВ рдХреЛ рдЫреВрдиреЗ рдХреЗ рдмрд┐рдирд╛ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред pftabled рдПрдХ рдбреЗрдорди рд╣реИ рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рддреИрдпрд╛рд░ рдХрд┐рдП рдЧрдП рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рддрд╛рд▓рд┐рдХрд╛рдУрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдЕрдиреБрдорд╛рдирд┐рдд pf.conf рд╡рд┐рдиреНрдпрд╛рд╕
int_if="em0" ext_if="em1" table <androids> table <private_nets> persist { 10.0.0.0/8, 172.16.0.0/16, 192.168.0.0/16 } # nat ! nat on $ext_if from { <private_nets> } to { !<private_nets> } -> ($ext_if) # . <androids> squid transparent . no rdr on $int_if from <androids> to any # apache wpad.dat rdr on $int_if from ($int_if:network) to { any, !($int_if) } port { 80,8080 } -> 127.0.0.1 port 3129 # Allow DHCP pass in on $int_if proto udp from any port bootpc to any port bootps pass out on $int_if proto udp from any port bootps to any port bootpc # Allow DNS pass in on $int_if proto udp from ($int_if:network) to ($int_if) port domain keep state pass out on $int_if proto udp from ($int_if) to ($int_if:network) port domain # Allow Proxy access pass in on $int_if proto tcp from ($int_if:network) to ($int_if) port 3128 flags S/SA keep state pass in on $int_if proto tcp from ($int_if:network) to 127.0.0.1 port 3129 flags S/SA keep state # Allow access to local HTTP Server pass in on $int_if proto tcp from ($int_if:network) to ($int_if) port 80 flags S/SA keep state # Allow access from <androids> to any services pass in from <androids> to any keep state pass out on $ext_if from ($ext_if) to any keep state pass out on $ext_if proto icmp from any to any keep state
рд╡рд░реНрдгрд┐рдд рд╡рд┐рдиреНрдпрд╛рд╕ рд╣рдореЗрдВ рдХреНрдпрд╛ рджреЗрддрд╛ рд╣реИ?
- рдкреЛрд░реНрдЯ 80.8080 рдкрд░ рдХрд┐рд╕реА рднреА рд╣реЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП рдЕрддрд┐рдерд┐ рдиреЗрдЯрд╡рд░реНрдХ рд╕реЗ рднреЗрдЬреЗ рдЧрдП рдХрд┐рд╕реА рднреА рдЕрдиреБрд░реЛрдз рдХреЛ рдкреЛрд░реНрдЯ 3129 рдкрд░ рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛
- рдПрдВрдбреНрд░реЙрдЗрдб рдЯреЗрдмрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдореЗрдЬрдмрд╛рдиреЛрдВ рдХреЗ рдХрд┐рд╕реА рднреА рдЕрдиреБрд░реЛрдз рдХреЛ рд╕реАрдзреЗ рдмрд╛рд╣рд░реА рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рднреЗрдЬ рджрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
- Dns, dhcpd, рд╕реНрдерд╛рдиреАрдп рд╡реЗрдм рд╕рд░реНрд╡рд░ рдФрд░ рдкреНрд░реЙрдХреНрд╕реА рдХреЗ рд▓рд┐рдП рдЕрдиреБрдордд рдЕрдиреБрд░реЛрдз
рд╣рдо рдХреЗрд╡рд▓ рдкреЛрд░реНрдЯ 80.8080 рдХреА рдЕрдиреБрдорддрд┐ рдХреНрдпреЛрдВ рджреЗрддреЗ рд╣реИрдВ? рдХреНрдпреЛрдВрдХрд┐ рдЕрдиреНрдп рдкреЛрд░реНрдЯ рдЦреЛрд▓рдиреЗ рд╕реЗ, рд╣рдо рдЕрдкрдиреЗ рдиреЗрдЯрд╡рд░реНрдХ рдХреЗ рдЙрдкрдпреЛрдЧ рдкрд░ рдирд┐рдпрдВрддреНрд░рдг рдЦреЛ рджреЗрддреЗ рд╣реИрдВред
рд╕рд░реНрдХрд┐рдЯ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рд╕реНрдерд╛рдиреАрдп wpad рд╕реЗрд╡рд╛ рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЗрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ dns рд╕рд░реНрд╡рд░ рдореЗрдВ IN A рд░рд┐рдХреЙрд░реНрдб рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ IP рдкрддреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЖрдкрдХреЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХрд╛ рдкрддрд╛ рд╣реИред рдиреАрдЪреЗ wpad.dat рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рдореВрд▓ рдореЗрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
function FindProxyForURL(url, host) { if( isPlainHostName(host) || dnsDomainIs(host, ".conf.local") || localHostOrDomainIs(host, "127.0.0.1") ){ return "DIRECT"; } if ( isInNet(host, "172.16.0.0", "255.255.0.0") || isInNet(host, "192.168.0.0", "255.255.0.0") || isInNet(host, "10.0.0.0", "255.0.0.0") || isInNet(host, "127.0.0.0", "255.255.255.0") ){ return "DIRECT"; } if ( isInNet(myIpAddress(), "192.168.0.0", "255.255.0.0")) return "PROXY 192.168.0.1:3128"; else return "DIRECT"; }
рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдкрдврд╝реЗрдВ:
- рдпрджрд┐ рдЕрдиреБрд░реЛрдз рдореЗрдВ рд╣реЛрд╕реНрдЯ рдирд╛рдо рдмрд┐рдирд╛ рдбреАрдПрдирдПрд╕ рдкреНрд░рддреНрдпрдп рдХреЗ рд╣реИ, рдпрд╛ рдЕрдиреБрд░реЛрдзрд┐рдд рд╣реЛрд╕реНрдЯ рдХреЗ рдбреЛрдореЗрди рдореЗрдВ ".conf.local" рд╢рд╛рдорд┐рд▓ рд╣реИ, рдпрд╛ рд╣реЛрд╕реНрдЯ 127.0.0.1 рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЕрдиреБрд░реЛрдзрд┐рдд рд╣реЛрд╕реНрдЯ рдкрд░ рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВред
- рдпрджрд┐ рдЕрдиреБрд░реЛрдзрд┐рдд рд╣реЛрд╕реНрдЯ рд╕реНрдерд╛рдиреАрдп рд╕рдмрдиреЗрдЯ рдкрддреЗ рдкрд░ рд╣рд▓ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рд╕реАрдзреЗ рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдВ
- рдмрд╛рдХреА рдХреЛ рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬреЗрдВ
рдкрд╛рд░рджрд░реНрд╢реА рдореЛрдб рдореЗрдВ рд╕реНрдХреНрд╡реАрдб рдХреЛ рдХреИрд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ,
рдпрд╣рд╛рдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдкрдврд╝рд╛ рдЬрд╛рддрд╛
рд╣реИ ред
рдЦреИрд░, рддреИрдпрд╛рд░реА рдкреВрд░реА рд╣реЛ рдЧрдИ рд╣реИред рдЕрдЧрд▓рд╛, рдЖрдк рд╕рд┐рд╕реНрдЯрдо рдХрд░реНрдиреЗрд▓ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдХреА рдЬрд╛рдВрдЪ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЕрдЧрд░ dhcpd рдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд╣реЛрд╕реНрдЯ рдХреЛ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рджреА рд╣реИрдВ, рддреЛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд╕рд╛рде "рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрддрд╛ рд▓рдЧрд╛рдирд╛" рд╕рдХреНрд╖рдо рд╣реИ, рдмреНрд░рд╛рдЙрдЬрд╝рд░ wpad.dat рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдЧрд╛ рдФрд░ рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдкрдиреЗ рд╕рднреА рдЕрдиреБрд░реЛрдз рднреЗрдЬреЗрдЧрд╛ред рдпрджрд┐ рдЖрдк рд╣реЛрд╕реНрдЯ рдХреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдЯреЗрдмрд▓ рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рддреЛ рд╕рднреА рдЯреНрд░реИрдлрд╝рд┐рдХ рдкреНрд░реЙрдХреНрд╕реА рд╕рд░реНрд╡рд░ рд╕реЗ рдЖрдЧреЗ рдирд┐рдХрд▓ рдЬрд╛рдПрдВрдЧреЗред
рд╣рдо рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рддреЗ рд╣реИрдВ
рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдФрд░ рд╕рдмрд╕реЗ рддреЗрдЬрд╝ рдбреЗрдЯрд╛ рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдкрддреЛрдВ рдХреА рд╡рд░реНрддрдорд╛рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЛ рд╣рд╛рдИ-рд╕реНрдкреАрдб рдПрдХреНрд╕реЗрд╕ рдХреЗ рд╕рд╛рде рд╕реБрд▓рдн рд╕реНрдерд╛рди рдкрд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдирд╛ рд╣реИред рдореЗрдордХреЗрдЪреНрдб рдореЗрд░реЗ рд▓рд┐рдП рдРрд╕реА рдЬрдЧрд╣ рд╣реИред рдЖрдк рдбреЗрдЯрд╛рдмреЗрд╕, рдлрд╝рд╛рдЗрд▓ рд╕реНрдЯреЛрд░реЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ, рдЬреЛ рднреА рдЖрдкрдХрд╛ рджрд┐рд▓ рдЪрд╛рд╣рддрд╛ рд╣реИред рдЦрд╕рдЦрд╕ рдкрддреЗ рдХреЗ рд╕реНрдерд╛рдиреАрдп рдЖрдзрд╛рд░ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдирд┐рдпрдорд┐рдд рдореЛрддреА рдмрд╛рд░ DB_File рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВред
рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╡рд░реНрдгрд┐рдд рд╣реИ, рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рдкрддреЛрдВ рдХрд╛ рдПрдХ рдбреЗрдЯрд╛рдмреЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдПрдХ рдЗрд╡реЗрдВрдЯ рд╣реИрдВрдбрд▓рд░ рдХреЛ dhcpd рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдиреАрдЪреЗ рдореЗрд░реЗ рд╣реИрдВрдбрд▓рд░ рдХрд╛ рдкрд╛рда рд╣реИред
рдлрд╝рд╛рдЗрд▓ /usr/local/etc/pftabled.key рдореЗрдВ рдПрдХ рдХреБрдВрдЬреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдЬреЛ pftabled рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИред
/Var/db/macs.db рдлрд╝рд╛рдЗрд▓ рдореЗрдВ DB_File HASH рдХреЗ рд░реВрдк рдореЗрдВ рдореИрдХ рдкрддреЛрдВ рдХрд╛ рдЖрдзрд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдЬрдм dhcpd рд╕реЗ рдХрдорд┐рдЯ рдХрдорд╛рдВрдб рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ - рдкреНрд░рд╛рдкреНрдд рдореИрдХ рдПрдбреНрд░реЗрд╕ рдХреЛ рдПрдбреНрд░реЗрд╕ рдмреЗрд╕ рдХреЗ рдЦрд┐рд▓рд╛рдл рдЪреЗрдХ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЕрдЧрд░ рдпрд╣ рд╡рд╣рд╛рдВ рдореМрдЬреВрдж рд╣реИ, рддреЛ рдПрдХ рдкреИрдХреЗрдЯ рдХреЛ pftabled рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдореИрдХ рдХреЗ рдЕрдиреБрд░реВрдк рдПрдВрдбреНрд░реЙрдЗрдб рдЯреЗрдмрд▓ рдкрд░ рдЖрдИрдкреА рдПрдбреНрд░реЗрд╕ рдЬреЛрдбрд╝рддрд╛ рд╣реИред рдЬрдм рд░рд┐рд▓реАрдЬрд╝ рдпрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ - рдЖрдИрдкреА рдХрдорд╛рдВрдб рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рддреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдЯреЗрдмрд▓ рд╕реЗ рдЖрдИрдкреА рдкрддрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдореЗрдореНрдХреЗрдЪреНрдб рдФрд░ рдкрдлрдЯреЗрдмрд▓ рдореЗрдВ рдбреЗрдЯрд╛ рд▓рд╛рдЗрдлрдЯрд╛рдЗрдо 19200 рд╕реЗрдХрдВрдб (рд▓рдЧрднрдЧ 5 рдШрдВрдЯреЗ) рдкрд░ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рд╡рд╣реА рд╕рдордп рдЕрдзрд┐рдХрддрдо-рд▓реАрдЬ-рдЯрд╛рдЗрдо рдкреИрд░рд╛рдореАрдЯрд░ рдореЗрдВ dhcpd.conf рдХреЙрдиреНрдлрд┐рдЧрд░ рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реИ рдХрд┐ рдореЗрдЬрдмрд╛рдиреЛрдВ рдФрд░ рдкреАрдПрдл рдореЗрдВ рдореЗрдЬрдмрд╛рди рдЦреЛ рдирд╣реАрдВ рд░рд╣реЗ рд╣реИрдВред
pftabled рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рд╕реЗ рд╢реБрд░реВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП:
pftabled_flags = "- d -a 127.0.0.1 -k /usr/local/etc/pftabled.key -t 19200"Crontab рдореЗрдВ рдЖрдкрдХреЛ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
* * 5 * * * * / sbin / pfctl -t androids -T expire 19200> / dev / null 2> & 1рдзреНрдпрд╛рди !!! /usr/local/etc/pftabled.key рдХрд╛ 0444 рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПрдЦреИрд░, рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдВрддрд┐рдо рднрд╛рдЧ рдПрдХ рд╡реЗрдм рдПрдХреНрд╕реЗрд╕ рдирд┐рдпрдо рд╣реИред
рдХреЛрдб рд╕рд░рд▓ рдФрд░ рд╕рд░рд▓ рд╣реИ, рдореЗрд░реЗ рдкрд╛рд╕ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЗрд╕рд▓рд┐рдП, рдмрд┐рдирд╛ рд╕рд╛рд╡рдзрд╛рдиреА рдФрд░ рддрд╛рдордЭрд╛рдо рдХреЗред
рдЦреИрд░, рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рд╣реИред
рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд░реАрдбрд┐рдВрдЧ рдЖрдкрдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реЛрдЧреА рдФрд░ рдЖрдкрдХреА рдХрдВрдкрдиреА рдХреЗ рд▓рд┐рдП рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рд╕реБрдзрд╛рд░ рдкрд░ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдЧреАред
рдкреБрдирд╢реНрдЪ: рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕реНрд╡рдпрдВ рдХреЛ рдЦреЛрд▓рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рд╣реЙрдЯрд╕реНрдкреЙрдЯреНрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдк рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░реЙрдХреНрд╕реА рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХреЛ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╡реЗрдм рд╕рд░реНрд╡рд░ рдкрд░ рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╣рд╛рдВ рд╕реЗ рдПрдХ рд╣реЛрд╕реНрдЯ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдХрд┐ isc-dhcpd рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ pftabled рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛред
PPS: рдЕрдВрддрд┐рдо рдлрд╝рд╛рдЗрд▓ рдореЗрдВ "functions.pm" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ, рдлреЙрд░реНрдо рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХрд╛ рдЗрдирдкреБрдЯ рдкреНрд░реЛрд╕реЗрд╕рд░ рд╣реИред рдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдЬрд╛рдБрдЪ рдХреЛ CGI рдореЗрдВ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬреЛ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдореИрдВ рдореЙрдбреНрдпреВрд▓ "рдлрдВрдХреНрд╢рдиреНрд╕ .pm" рдХреЗ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдФрд░ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рд▓реЗ рдЬрд╛ рд╕рдХрддрд╛ рд╣реВрдВ
рдЕрдмреЙрд░реНрдЪреЗ 2011