BGP рд▓рд╛рдИ рдмрд╛рдЗрдкрд╛рд╕ рдЕрд╡рд░реБрджреНрдз рдЧрд░реНрди рд╕реЗрдЯрдЕрдк рдЧрд░реНрджреИ, рд╡рд╛ "рдХрд╕рд░реА рдореИрд▓реЗ рдбрд░рд╛рдЙрди рдЫреЛрдбреЗрдБ рд░ RKN рд╕рдБрдЧ рдкреНрд░реЗрдордорд╛ рдкрд░реЗрдВ"

рдареАрдХ рдЫ, "рдкреНрд░реЗрдо" рдХреЛ рдмрд╛рд░реЗрдорд╛ рдПрдХ рдЕрддрд┐рд╢рдпреЛрдХреНрддрд┐ рд╣реЛред рдмрд░реБ, "рд╕рдБрдЧреИ рдмрд╕реНрди рд╕рдХреНрд╖рдо рдерд┐рдпреЛред"

рддрдкрд╛рдИрдВ рд╕рдмреИрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫ, рдЕрдкреНрд░рд┐рд▓ 16, 2018 рджреЗрдЦрд┐, Roskomnadzor рд▓реЗ "рдбреЛрдореЗрди рдирд╛рдорд╣рд░реВрдХреЛ рдПрдХреАрдХреГрдд рджрд░реНрддрд╛, рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рд╕рд╛рдЗрдЯрд╣рд░реВрдХреЛ рдкреГрд╖реНрда рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд░ рдиреЗрдЯрд╡рд░реНрдХ рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдЬрд╕рд▓реЗ рд╕рд╛рдЗрдЯрд╣рд░реВрд▓рд╛рдИ рдкрд╣рд┐рдЪрд╛рди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ" рдорд╛ рдердкреНрджреИ рдзреЗрд░реИ рдлрд░рд╛рдХрд┐рд▓реЛ рд╕реНрдЯреНрд░реЛрдХрд╣рд░реВрдорд╛ рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рд░реЛрдХреЗрдХреЛ рдЫред рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ "рдЬрд╕рдХреЛ рд╡рд┐рддрд░рдг рд░реВрд╕реА рд╕рдВрдШрдорд╛ рдирд┐рд╖реЗрдз рдЧрд░рд┐рдПрдХреЛ рдЬрд╛рдирдХрд╛рд░реА рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ" (рдкрд╛рдардорд╛ - рдХреЗрд╡рд▓ рдПрдХ рджрд░реНрддрд╛) рдХрд╣рд┐рд▓реЗрдХрд╛рд╣реАрдБ /10 рджреНрд╡рд╛рд░рд╛ред рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рд░реВрд╕реА рд╕рдВрдШрдХрд╛ рдирд╛рдЧрд░рд┐рдХрд╣рд░реВ рд░ рд╡реНрдпрд╡рд╕рд╛рдпрд╣рд░реВ рдкреАрдбрд┐рдд рдЫрдиреН, рдЙрдиреАрд╣рд░реВрд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрдиреЗ рдкреВрд░реНрдг рдХрд╛рдиреБрдиреА рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рдЧреБрдорд╛рдПрдХрд╛ рдЫрдиреНред

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

рддреНрдпрд╛рдЧ

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

рд╕рд╛рдереИ, рдо рдореБрдЦреНрдп рд░реВрдкрдорд╛ рдкреЗрд╢рд╛, рдкреЗрд╢рд╛ рд░ рдЬреАрд╡рди рдорд╛рд░реНрдЧ рджреНрд╡рд╛рд░рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЯ рд╣реБрдБ, рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд░ рд▓рд┐рдирдХреНрд╕ рдореЗрд░реЛ рдмрд▓рд┐рдпреЛ рдмрд┐рдиреНрджреБрд╣рд░реВ рд╣реЛрдЗрдирдиреНред рддреНрдпрд╕рдХрд╛рд░рдг, рдкрдХреНрдХреИ рдкрдирд┐, рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рд▓реЗрдЦреНрди рд╕рдХрд┐рдиреНрдЫ, VPS рдорд╛ рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджрд╛рд╣рд░реВ рдЕрдЭ рдЧрд╣рд┐рд░реЛ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫ, рдЖрджрд┐ред рддрдкрд╛рдИрдВрдХреЛ рд╕реБрдЭрд╛рд╡рд╣рд░реВ рдХреГрддрдЬреНрдЮрддрд╛рдХрд╛ рд╕рд╛рде рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░рд┐рдиреЗрдЫ, рдпрджрд┐ рддрд┐рдиреАрд╣рд░реВ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдкрдорд╛ рд╡рд┐рд╕реНрддреГрдд рдЫрдиреН - рдо рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд▓реЗрдЦрдХреЛ рдкрд╛рдардорд╛ рдердкреНрди рдкрд╛рдЙрдБрджрд╛ рдЦреБрд╕реА рд╣реБрдиреЗрдЫреБред

TL; рдб

рд╣рд╛рдореА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд░ BGP рдкреНрд░реЛрдЯреЛрдХрд▓рдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рддрдкрд╛рдИрдВрдХреЛ рдЕрд╡рд╕реНрдерд┐рдд рд╕реБрд░реБрдЩ рдорд╛рд░реНрдлрдд рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рдкрд╣реБрдБрдЪ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЧрд░реНрдЫреМрдВред рд▓рдХреНрд╖реНрдп рднрдиреЗрдХреЛ рд╕реБрд░реБрдЩрдорд╛ рдЕрд╡рд░реБрджреНрдз рд╕реНрд░реЛрддрд╣рд░реВрдорд╛ рд╕рдореНрдмреЛрдзрди рдЧрд░рд┐рдПрдХрд╛ рд╕рдмреИ рдЯреНрд░рд╛рдлрд┐рдХрд╣рд░реВ рд╣рдЯрд╛рдЙрдиреБ рд╣реЛред рдиреНрдпреВрдирддрдо рд╕реНрдкрд╖реНрдЯреАрдХрд░рдгрд╣рд░реВ, рдкреНрд░рд╛рдпрдГ рдЪрд░рдг-рджрд░-рдЪрд░рдг рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВред

рддрдкрд╛рдИрд▓рд╛рдИ рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдХреЗ рдЪрд╛рд╣рд┐рдиреНрдЫ?

рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рдпреЛ рдкреЛрд╕реНрдЯ рд╕рдмреИрдХреЛ рд▓рд╛рдЧрд┐ рд╣реЛрдЗрдиред рдпреЛ рдкреНрд░рд╡рд┐рдзрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ рдзреЗрд░реИ рддрддреНрд╡рд╣рд░реВ рд╕рдБрдЧреИ рд░рд╛рдЦреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

  1. рддрдкрд╛рдЗрдБрд╕рдБрдЧ рдЕрд╡рд░реБрджреНрдз рдХреНрд╖реЗрддреНрд░ рдмрд╛рд╣рд┐рд░ рдХрддреИ рд▓рд┐рдирдХреНрд╕ рд╕рд░реНрднрд░ рд╣реБрдиреБрдкрд░реНрдЫред рд╡рд╛ рдХрдореНрддрд┐рдорд╛ рдпрд╕реНрддреЛ рд╕рд░реНрднрд░ рд╣реБрдиреЗ рдЗрдЪреНрдЫрд╛ - рд╕реМрднрд╛рдЧреНрдп рджреЗрдЦрд┐ рдпреЛ рдЕрдм $ 9/рд╡рд░реНрд╖ рдмрд╛рдЯ рдЦрд░реНрдЪ рд╣реБрдиреНрдЫ, рд░ рд╕рдореНрднрд╡рддрдГ рдХрдоред рд╡рд┐рдзрд┐ рдкрдирд┐ рдЙрдкрдпреБрдХреНрдд рдЫ рдпрджрд┐ рддрдкрд╛рдИрдВрд╕рдБрдЧ рдЫреБрдЯреНрдЯреИ VPN рдЯрдиреЗрд▓ рдЫ рднрдиреЗ, рд╕рд░реНрднрд░ рдЕрд╡рд░реБрджреНрдз рдХреНрд╖реЗрддреНрд░ рднрд┐рддреНрд░ рдЕрд╡рд╕реНрдерд┐рдд рд╣реБрди рд╕рдХреНрдЫред
  2. рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рдЙрдЯрд░ рд╕рдХреНрд╖рдо рд╣реБрди рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдорд╛рд░реНрдЯ рд╣реБрдиреБрдкрд░реНрдЫ
    • рддрдкрд╛рдИрдВрд▓рд╛рдИ рдордирдкрд░реНрдиреЗ рдХреБрдиреИ рдкрдирд┐ VPN рдХреНрд▓рд╛рдЗрдиреНрдЯ (рдо OpenVPN рд░реБрдЪрд╛рдЙрдБрдЫреБ, рддрд░ рдпреЛ PPTP, L2TP, GRE + IPSec рд╡рд╛ рдЯрдиреЗрд▓ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рд╣реБрди рд╕рдХреНрдЫ);
    • BGPv4 рдкреНрд░реЛрдЯреЛрдХрд▓ред рдЬрд╕рдХреЛ рдорддрд▓рдм SOHO рдХреЛ рд▓рд╛рдЧрд┐ рдпреЛ Mikrotik рд╡рд╛ OpenWRT/LEDE/ рд╕рдорд╛рди рдХрд╕реНрдЯрдо рдлрд░реНрдорд╡реЗрдпрд░ рднрдПрдХреЛ рдХреБрдиреИ рд░рд╛рдЙрдЯрд░ рд╣реБрди рд╕рдХреНрдЫ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ Quagga рд╡рд╛ Bird рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдкреАрд╕реА рд░рд╛рдЙрдЯрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдкрдирд┐ рдирд┐рд╖реЗрдзрд┐рдд рдЫреИрдиред рдЙрджреНрдпрдордХреЛ рдорд╛рдорд▓рд╛рдорд╛, рддрдкрд╛рдИрдВрдХреЛ рд╕реАрдорд╛ рд░рд╛рдЙрдЯрд░рдХреЛ рдХрд╛рдЧрдЬрд╛рддрдорд╛ BGP рд╕рдорд░реНрдерди рдЦреЛрдЬреНрдиреБрд╣реЛрд╕реНред
  3. рддрдкрд╛рдИрдВрд╕рдБрдЧ BGP рдкреНрд░реЛрдЯреЛрдХрд▓ рд╕рд╣рд┐рдд рд▓рд┐рдирдХреНрд╕ рдкреНрд░рдпреЛрдЧ рд░ рдиреЗрдЯрд╡рд░реНрдХрд┐рдЩ рдкреНрд░рд╡рд┐рдзрд┐рд╣рд░реВрдХреЛ рдмреБрдЭрд╛рдЗ рд╣реБрдиреБрдкрд░реНрдЫред рд╡рд╛ рдХрдорд╕реЗрдХрдо рдпрд╕реНрддреЛ рд╡рд┐рдЪрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫред рдпрд╕ рдкрдЯрдХ рдо рд╡рд┐рд╢рд╛рд▓рддрд╛рд▓рд╛рдИ рдЕрдБрдЧрд╛рд▓реНрди рддрдпрд╛рд░ рдирднрдПрдХреЛрд▓реЗ, рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреИрдВрд▓реЗ рдмреБрдЭреНрди рдирд╕рдХрд┐рдиреЗ рдХреЗрд╣реА рдкрдХреНрд╖рд╣рд░реВ рдЕрдзреНрдпрдпрди рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫред рдпрджреНрдпрдкрд┐, рдо рдкрдХреНрдХреИ рдкрдирд┐ рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдорд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╢реНрдирд╣рд░реВрдХреЛ рдЬрд╡рд╛рдл рджрд┐рдиреЗрдЫреБ рд░ рдо рдПрдХ рдорд╛рддреНрд░ рдЬрд╡рд╛рдл рджрд┐рдиреЗ рд╕рдореНрднрд╛рд╡рдирд╛ рдЫреИрди, рддреНрдпрд╕реИрд▓реЗ рд╕реЛрдзреНрди рдирд╣рд┐рдЪрдХрд┐рдЪрд╛рдЙрдиреБрд╣реЛрд╕реНред

рдЙрджрд╛рд╣рд░рдгрдорд╛ рдХреЗ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ рдЫ

  • рджрд░реНрддрд╛рдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ - рдмрд╛рдЯ https://github.com/zapret-info/z-i 
  • VPS - Ubuntu 16.04
  • рд░реБрдЯрд┐рдЩ рд╕реЗрд╡рд╛ - рдЪрд░рд╛ 1.6.3   
  • рд░рд╛рдЙрдЯрд░ - Mikrotik hAP ac
  • рдХрд╛рдо рдЧрд░реНрдиреЗ рдлреЛрд▓реНрдбрд░рд╣рд░реВ - рд╣рд╛рдореА рд░реВрдЯрдХреЛ рд░реВрдкрдорд╛ рдХрд╛рдо рдЧрд░реНрджреИрдЫреМрдВ, рдзреЗрд░реИ рдЬрд╕реЛ рд╕рдмреИ рд░реВрдЯрдХреЛ рдЧреГрд╣ рдлреЛрд▓реНрдбрд░рдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рд╣реБрдиреЗрдЫред рдХреНрд░рдорд╢рдГ
    • /root/blacklist - рд╕рдВрдХрд▓рди рд▓рд┐рдкрд┐рдХреЛ рд╕рд╛рде рдХрд╛рдо рдЧрд░реНрдиреЗ рдлреЛрд▓реНрдбрд░
    • /root/zi - github рдмрд╛рдЯ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐
    • /etc/bird - рдкрдХреНрд╖реА рд╕реЗрд╡рд╛ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рдирдХ рдлреЛрд▓реНрдбрд░
  • рд░реВрдЯрд┐рдЩ рд╕рд░реНрднрд░ рд░ рдЯрдиреЗрд▓ рдЯрд░реНрдорд┐рдиреЗрд╢рди рдкреЛрдЗрдиреНрдЯ рднрдПрдХреЛ VPS рдХреЛ рдмрд╛рд╣реНрдп IP рдареЗрдЧрд╛рдирд╛ 194.165.22.146, ASN 64998; рд░рд╛рдЙрдЯрд░рдХреЛ рдмрд╛рд╣реНрдп IP рдареЗрдЧрд╛рдирд╛ - 81.177.103.94, ASN 64999
  • рд╕реБрд░реБрдЩ рднрд┐рддреНрд░ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдХреНрд░рдорд╢рдГ 172.30.1.1 рд░ 172.30.1.2 рдЫрдиреНред

BGP рд▓рд╛рдИ рдмрд╛рдЗрдкрд╛рд╕ рдЕрд╡рд░реБрджреНрдз рдЧрд░реНрди рд╕реЗрдЯрдЕрдк рдЧрд░реНрджреИ, рд╡рд╛ "рдХрд╕рд░реА рдореИрд▓реЗ рдбрд░рд╛рдЙрди рдЫреЛрдбреЗрдБ рд░ RKN рд╕рдБрдЧ рдкреНрд░реЗрдордорд╛ рдкрд░реЗрдВ"

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рддрдкрд╛рдИрдВ рдХреБрдиреИ рдкрдирд┐ рдЕрдиреНрдп рд░рд╛рдЙрдЯрд░рд╣рд░реВ, рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдорд╣рд░реВ рд░ рд╕рдлреНрдЯрд╡реЗрдпрд░ рдЙрддреНрдкрд╛рджрдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рддрд┐рдиреАрд╣рд░реВрдХреЛ рддрд░реНрдХрдХреЛ рд╕рдорд╛рдзрд╛рди рд╕рдорд╛рдпреЛрдЬрди рдЧрд░реНрджреИред

рдЫреЛрдЯрдХрд░реАрдорд╛ - рд╕рдорд╛рдзрд╛рди рдХреЛ рддрд░реНрдХ

  1. рддрдпрд╛рд░реА рдХрд╛рд░реНрдпрд╣рд░реВ
    1. VPS рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИ
    2. рд░рд╛рдЙрдЯрд░рдмрд╛рдЯ VPS рдорд╛ рд╕реБрд░реБрдЩ рдЙрдард╛рдЙрдБрджреИ
  2. рд╣рд╛рдореАрд▓реЗ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╛рдкреНрдд рд░ рдирд┐рдпрдорд┐рдд рд░реВрдкрдорд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрдЫреМрдВ
  3. рд░реВрдЯрд┐рдЩ рд╕реЗрд╡рд╛ рд╕реНрдерд╛рдкрдирд╛ рд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрджреИ
  4. рд╣рд╛рдореА рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд░рд╛рдЙрдЯрд┐рдВрдЧ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рд╕реНрдерд┐рд░ рдорд╛рд░реНрдЧрд╣рд░реВрдХреЛ рд╕реВрдЪреА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдЫреМрдВ
  5. рд╣рд╛рдореА рд░рд╛рдЙрдЯрд░рд▓рд╛рдИ рд╕реЗрд╡рд╛рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ рд░ рд╕реБрд░реБрдЩ рдорд╛рд░реНрдлрдд рд╕рдмреИ рдЯреНрд░рд╛рдлрд┐рдХ рдкрдард╛рдЙрдиреЗ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдЫреМрдВред

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╛рдзрд╛рди

рддрдпрд╛рд░реА рдХрд╛рд░реНрдпрд╣рд░реВ

рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рдзреЗрд░реИ рд╕реЗрд╡рд╛рд╣рд░реВ рдЫрдиреН рдЬрд╕рд▓реЗ рдЕрддреНрдпрдиреНрдд рдЙрдЪрд┐рдд рдореВрд▓реНрдпрд╣рд░реВрдорд╛ VPS рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред рдЕрд╣рд┐рд▓реЗрд╕рдореНрдо рдореИрд▓реЗ $ 9/рд╡рд░реНрд╖рдХреЛ рд▓рд╛рдЧрд┐ рд╡рд┐рдХрд▓реНрдк рдлреЗрд▓рд╛ рдкрд╛рд░реЗрдХреЛ рдЫреБ рд░ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫреБ, рддрд░ рдпрджрд┐ рддрдкрд╛рдЗрдБ рдзреЗрд░реИ рдкрд░реЗрд╢рд╛рди рдЧрд░реНрдиреБрд╣реБрдиреНрди рднрдиреЗ рдкрдирд┐, рдкреНрд░рддреНрдпреЗрдХ рдХреБрдирд╛рдорд╛ 1E/рдорд╣рд┐рдирд╛рдХрд╛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдЫрдиреНред VPS рдЫрдиреМрдЯ рдЧрд░реНрдиреЗ рдкреНрд░рд╢реНрди рдпрд╕ рд▓реЗрдЦрдХреЛ рджрд╛рдпрд░рд╛рднрдиреНрджрд╛ рдмрд╛рд╣рд┐рд░ рдЫ, рддреНрдпрд╕реИрд▓реЗ рдпрджрд┐ рдХрд╕реИрд▓реЗ рдпрд╕ рдмрд╛рд░реЗ рдХреЗрд╣реА рдмреБрдЭреНрджреИрди рднрдиреЗ, рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдорд╛ рд╕реЛрдзреНрдиреБрд╣реЛрд╕реНред

рдпрджрд┐ рддрдкрд╛рдЗрдБ рд░реБрдЯрд┐рдЩ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рдпрд╕рдорд╛ рд╕реБрд░реБрдЩ рдмрдиреНрдж рдЧрд░реНрди VPS рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБрд▓реЗ рдпреЛ рд╕реБрд░реБрдЩ рдЙрдард╛рдЙрдиреБ рдкрд░реНрдЫ рд░, рд▓рдЧрднрдЧ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрдорд╛, рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ NAT рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдЗрдиреНрдЯрд░рдиреЗрдЯрдорд╛ рдпреА рдХрд╛рд░реНрдпрд╣рд░реВрдорд╛ рдзреЗрд░реИ рд╕рдВрдЦреНрдпрд╛рдорд╛ рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдЫрдиреН, рдо рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдпрд╣рд╛рдБ рджреЛрд╣реЛрд░реНрдпрд╛рдЙрдиреЗ рдЫреИрдиред рдпрд╕реНрддреЛ рд╕реБрд░реБрдЩрдХреЛ рд▓рд╛рдЧрд┐ рдореБрдЦреНрдп рдЖрд╡рд╢реНрдпрдХрддрд╛ рдпреЛ рд╣реЛ рдХрд┐ рдпрд╕рд▓реЗ рддрдкрд╛рдЗрдБрдХреЛ рд░рд╛рдЙрдЯрд░рдорд╛ VPS рддрд░реНрдл рд╕реБрд░реБрдЩрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗ рдЫреБрдЯреНрдЯреИ рдЗрдиреНрдЯрд░рдлреЗрд╕ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрдкрд░реНрдЫред рдзреЗрд░реИ рдЬрд╕реЛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХреЛ VPN рдкреНрд░рд╡рд┐рдзрд┐рд╣рд░реВрд▓реЗ рдпреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкреВрд░рд╛ рдЧрд░реНрджрдЫ - рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдЯреНрдпреВрди рдореЛрдбрдорд╛ OpenVPN рдЙрддреНрддрдо рдЫред

рджрд░реНрддрд╛рдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрджреИ

рдЬрдмрд░рд╛рдЗрд▓рд▓реЗ рднрдиреЗ, "рдЬрд╕рд▓реЗ рд╣рд╛рдореАрд▓рд╛рдИ рдмрд╛рдзрд╛ рдкреБрд░реНтАНрдпрд╛рдЙрдБрдЫ рдЙрд╕рд▓реЗ рд╣рд╛рдореАрд▓рд╛рдИ рдорджреНрджрдд рдЧрд░реНрдиреЗрдЫред" RKN рд▓реЗ рдкреНрд░рддрд┐рдмрдиреНрдзрд┐рдд рд╕реНрд░реЛрддрд╣рд░реВрдХреЛ рдПрдХ рджрд░реНрддрд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рд░рд╣реЗрдХреЛ рд╣реБрдирд╛рд▓реЗ, рд╣рд╛рдореНрд░реЛ рд╕рдорд╕реНрдпрд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрди рдпреЛ рджрд░реНрддрд╛ рдкреНрд░рдпреЛрдЧ рдирдЧрд░реНрдиреБ рдкрд╛рдк рд╣реБрдиреЗрдЫред рд╣рд╛рдореАрд▓реЗ github рдмрд╛рдЯ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗрдЫреМрдВред

рд╣рд╛рдореА рддрдкрд╛рдИрдХреЛ рд▓рд┐рдирдХреНрд╕ рд╕рд░реНрднрд░рдорд╛ рдЬрд╛рдиреНрдЫреМрдВ, рдореВрд▓ рд╕рдиреНрджрд░реНрднрдорд╛ рдЬрд╛рдиреНрдЫреМрдВ (sudo su -) рд░ git рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдпрджрд┐ рдпреЛ рдкрд╣рд┐рд▓реЗ рдиреИ рд╕реНрдерд╛рдкрд┐рдд рдЫреИрдиред

apt install git

рддрдкрд╛рдИрдВрдХреЛ рдЧреГрд╣ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реАрдорд╛ рдЬрд╛рдиреБрд╣реЛрд╕реН рд░ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдХреЛ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдирд┐рдХрд╛рд▓реНрдиреБрд╣реЛрд╕реНред

cd ~ && git clone --depth=1 https://github.com/zapret-info/z-i 

рд╣рд╛рдореАрд▓реЗ рдХреНрд░реЛрди рдЕрдкрдбреЗрдЯ рд╕реЗрдЯ рдЕрдк рдЧрд░реНрдпреМрдВ (рдо рдпрд╕рд▓рд╛рдИ рд╣рд░реЗрдХ реиреж рдорд┐рдиреЗрдЯрдорд╛ рдПрдХрдкрдЯрдХ рдЧрд░реНрдЫреБ, рддрд░ рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ рд░реБрдЪрд┐ рднрдПрдХреЛ рдХреБрдиреИ рдЕрдиреНрддрд░рд╛рд▓ рд░реЛрдЬреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ)ред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╣рд╛рдореА рд╕реБрд░реБ рдЧрд░реНрдЫреМрдВ crontab -e рд░ рдпрд╕рдорд╛ рдирд┐рдореНрди рд▓рд╛рдЗрди рдердкреНрдиреБрд╣реЛрд╕реН:

*/20 * * * * cd ~/z-i && git pull && git gc

рд╣рд╛рдореА рдПрдХ рд╣реБрдХ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ рдЬрд╕рд▓реЗ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реЗрдкрдЫрд┐ рд░реВрдЯрд┐рдЩ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рдлрд╛рдЗрд▓рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗрдЫред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рдПрдЙрдЯрд╛ рдлрд╛рдЗрд▓ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН /root/zi/.git/hooks/post-merge рдирд┐рдореНрди рд╕рд╛рдордЧреНрд░реА рд╕рдВрдЧ:

#!/usr/bin/env bash
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
check_run() {
    echo "$changed_files" | grep --quiet "$1" && eval "$2"
}
check_run dump.csv "/root/blacklist/makebgp"

рд░ рдпрд╕рд▓рд╛рдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдмрдирд╛рдЙрди рдирдмрд┐рд░реНрд╕рдиреБрд╣реЛрд╕реН

chmod +x /root/z-i/.git/hooks/post-merge

рд╣рд╛рдореА makebgp рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗрдЫреМрдВ рдЬреБрди рд╣реБрдХрд▓реЗ рдХреЗрд╣рд┐ рд╕рдордп рдкрдЫрд┐ рдмреБрдЭрд╛рдЙрдБрдЫред

рд░реВрдЯрд┐рдЩ рд╕реЗрд╡рд╛ рд╕реНрдерд╛рдкрдирд╛ рд░ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрджреИ

рдкрдХреНрд╖реА рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рд╣рд╛рд▓ рдЙрдмреБрдиреНрдЯреБ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрд╣рд░реВрдорд╛ рдкреЛрд╖реНрдЯ рдЧрд░рд┐рдПрдХреЛ рдмрд░реНрдбрдХреЛ рд╕рдВрд╕реНрдХрд░рдг рдЖрд░реНрдХрд┐рдпреЛрдкреНрдЯреЗрд░рд┐рдХреНрд╕ рдорд▓рд╕рдБрдЧ рддрд╛рдЬрд╛рдкрдирдорд╛ рддреБрд▓рдирд╛рддреНрдордХ рдЫ, рддреНрдпрд╕реИрд▓реЗ рд╣рд╛рдореАрд▓реЗ рдкрд╣рд┐рд▓реЗ рдкреНрд░рдгрд╛рд▓реАрдорд╛ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреАрдкреАрдП рдердкреНрди рдЖрд╡рд╢реНрдпрдХ рдЫред

add-apt-repository ppa:cz.nic-labs/bird
apt update
apt install bird

рдпрд╕ рдкрдЫрд┐, рд╣рд╛рдореА рддреБрд░реБрдиреНрддреИ IPv6 рдХреЛ рд▓рд╛рдЧрд┐ рдмрд░реНрдб рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрдЫреМрдВ - рд╣рд╛рдореАрд▓рд╛рдИ рдпреЛ рд╕реНрдерд╛рдкрдирд╛рдорд╛ рдЖрд╡рд╢реНрдпрдХ рдкрд░реНрджреИрдиред

systemctl stop bird6
systemctl disable bird6

рддрд▓ рдПрдХ рдиреНрдпреВрдирддрдо рдкрдХреНрд╖реА рд╕реЗрд╡рд╛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлрд╛рдЗрд▓ рдЫ (/etc/bird/bird.conf), рдЬреБрди рд╣рд╛рдореНрд░реЛ рд▓рд╛рдЧрд┐ рдкрд░реНрдпрд╛рдкреНрдд рдЫ (рд░ рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рдПрдХ рдкрдЯрдХ рдлреЗрд░рд┐ рд╕рдореНрдЭрд╛рдЙрдБрдЫреБ рдХрд┐ рдХрд╕реИрд▓реЗ рдкрдирд┐ рддрдкрд╛рдИрдВрдХреЛ рдЖрдлреНрдиреИ рдЖрд╡рд╢реНрдпрдХрддрд╛рд╣рд░реВ рдЕрдиреБрд░реВрдк рд╡рд┐рдЪрд╛рд░ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрди рд░ рдЯреНрдпреБрдирд┐рдЩ рдЧрд░реНрди рдирд┐рд╖реЗрдз рдЧрд░реНрджреИрди)

log syslog all;
router id 172.30.1.1;

protocol kernel {
        scan time 60;
        import none;
#       export all;   # Actually insert routes into the kernel routing table
}

protocol device {
        scan time 60;
}

protocol direct {
        interface "venet*", "tun*"; # Restrict network interfaces it works with
}

protocol static static_bgp {
        import all;
        include "pfxlist.txt";
        #include "iplist.txt";
}

protocol bgp OurRouter {
        description "Our Router";
        neighbor 81.177.103.94 as 64999;
        import none;
        export where proto = "static_bgp";
        local as 64998;
        passive off;
        multihop;
}

рд░рд╛рдЙрдЯрд░ рдЖрдИрдбреА - рд░рд╛рдЙрдЯрд░ рдкрд╣рд┐рдЪрд╛рдирдХрд░реНрддрд╛, рдЬреБрди рдиреЗрддреНрд░рд╣реАрди рд░реВрдкрдорд╛ IPv4 рдареЗрдЧрд╛рдирд╛ рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ, рддрд░ рдПрдЙрдЯрд╛ рд╣реЛрдЗрдиред рд╣рд╛рдореНрд░реЛ рдорд╛рдорд▓рд╛ рдорд╛, рдпреЛ IPv32 рдареЗрдЧрд╛рдирд╛ рдврд╛рдБрдЪрд╛рдорд╛ рдХреБрдиреИ рдкрдирд┐ 4-рдмрд┐рдЯ рдирдореНрдмрд░ рд╣реБрди рд╕рдХреНрдЫ, рддрд░ рдпреЛ рддрдкрд╛рдИрдВрдХреЛ рдЙрдкрдХрд░рдгрдХреЛ IPv4 рдареЗрдЧрд╛рдирд╛ (рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, VPS) рдареНрдпрд╛рдХреНрдХреИ рд╕рдВрдХреЗрдд рдЧрд░реНрди рд░рд╛рдореНрд░реЛ рдлрд╛рд░рдо рд╣реЛред

рдкреНрд░реЛрдЯреЛрдХрд▓ рдкреНрд░рддреНрдпрдХреНрд╖ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрджрдЫ рдХреБрди рдЗрдиреНрдЯрд░рдлреЗрд╕рд▓реЗ рд░рд╛рдЙрдЯрд┐рдВрдЧ рдкреНрд░рдХреНрд░рд┐рдпрд╛рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫред рдЙрджрд╛рд╣рд░рдгрд▓реЗ рдХреЗрд╣реА рдЙрджрд╛рд╣рд░рдг рдирд╛рдорд╣рд░реВ рджрд┐рдиреНрдЫ, рддрдкрд╛рдИрдВ рдЕрд░реВ рдердкреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рддрдкрд╛рдИрдВ рдХреЗрд╡рд▓ рд▓рд╛рдЗрди рдореЗрдЯрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ; рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рд╕рд░реНрднрд░рд▓реЗ IPv4 рдареЗрдЧрд╛рдирд╛рдХреЛ рд╕рд╛рде рд╕рдмреИ рдЙрдкрд▓рдмреНрдз рдЗрдиреНрдЯрд░рдлреЗрд╕рд╣рд░реВ рд╕реБрдиреНрдиреЗрдЫред

рдкреНрд░реЛрдЯреЛрдХрд▓ рд╕реНрдЯреНрдпрд╛рдЯрд┐рдХ рд╣рд╛рдореНрд░реЛ рдЬрд╛рджреБ рд╣реЛ рдЬрд╕рд▓реЗ рдЙрдкрд╕рд░реНрдЧрд╣рд░реВ рд░ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреАрд╣рд░реВ рд▓реЛрдб рдЧрд░реНрджрдЫ (рдЬреБрди рд╡рд╛рд╕реНрддрд╡рдорд╛ /32 рдЙрдкрд╕рд░реНрдЧрд╣рд░реВ рд╣реБрдиреН, рдЕрд╡рд╢реНрдп рдкрдирд┐) рдкрдЫрд┐рдХреЛ рдШреЛрд╖рдгрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдлрд╛рдЗрд▓рд╣рд░реВрдмрд╛рдЯред рдпреА рд╕реВрдЪреАрд╣рд░реВ рдХрд╣рд╛рдБрдмрд╛рдЯ рдЖрдЙрдБрдЫрдиреН рддрд▓ рдЫрд▓рдлрд▓ рдЧрд░рд┐рдиреЗрдЫред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджрд┐рдиреБрд╣реЛрд╕реН рдХрд┐ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд▓реЛрдб рдЧрд░реНрджрд╛ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ рдЯрд┐рдкреНрдкрдгреА рдЧрд░рд┐рдПрдХреЛ рдЫ, рдпрд╕рдХреЛ рдХрд╛рд░рдг рдЕрдкрд▓реЛрдбрдХреЛ рдареВрд▓реЛ рдорд╛рддреНрд░рд╛ рд╣реЛред рддреБрд▓рдирд╛рдХреЛ рд▓рд╛рдЧрд┐, рд▓реЗрдЦрдирдХреЛ рд╕рдордпрдорд╛, рдЙрдкрд╕рд░реНрдЧрд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ 78 рд▓рд╛рдЗрдирд╣рд░реВ рдЫрдиреН, рд░ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ 85898ред рдо рджреГрдврддрд╛рдкреВрд░реНрд╡рдХ рдЙрдкрд╕рд░реНрдЧрд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рдорд╛рддреНрд░ рд╕реБрд░реБ рд░ рдбрд┐рдмрдЧ рдЧрд░реНрди рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░реНрдЫреБ, рд░ IP рд▓реЛрдбрд┐рдЩ рд╕рдХреНрд╖рдо рдЧрд░реНрдиреЗ рд╡рд╛ рдирдЧрд░реНрдиреЗред рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рдЙрдЯрд░рдХреЛ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рд╕рдХреЗрдкрдЫрд┐ рдирд┐рд░реНрдгрдп рдЧрд░реНрдиреЗ рднрд╡рд┐рд╖реНрдп рддрдкрд╛рдИрдВрдорд╛ рдирд┐рд░реНрднрд░ рдЫред рддрд┐рдиреАрд╣рд░реВрдордзреНрдпреЗ рдкреНрд░рддреНрдпреЗрдХрд▓реЗ рд░реВрдЯрд┐рдЩ рддрд╛рд▓рд┐рдХрд╛рдорд╛ 85 рд╣рдЬрд╛рд░ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд╣рд░реВ рд╕рдЬрд┐рд▓реИ рдкрдЪрд╛рдЙрди рд╕рдХреНрджреИрдирдиреНред

рдкреНрд░реЛрдЯреЛрдХрд▓ bgp, рд╡рд╛рд╕реНрддрд╡рдорд╛, рддрдкрд╛рдЗрдБрдХреЛ рд░рд╛рдЙрдЯрд░ рд╕рдВрдЧ bgp peering рд╕реЗрдЯ рдЕрдк рдЧрд░реНрджрдЫред IP рдареЗрдЧрд╛рдирд╛ рд░рд╛рдЙрдЯрд░рдХреЛ рдмрд╛рд╣реНрдп рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ рдареЗрдЧрд╛рдирд╛ рд╣реЛ (рд╡рд╛ рд░рд╛рдЙрдЯрд░ рд╕рд╛рдЗрдбрдорд╛ рдЯрдиреЗрд▓ рдЗрдиреНрдЯрд░рдлреЗрд╕рдХреЛ рдареЗрдЧрд╛рдирд╛), 64998 рд░ 64999 рд╕реНрд╡рд╛рдпрддреНрдд рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛рд╣рд░реВ рд╣реБрдиреНред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рддрд┐рдиреАрд╣рд░реВ рдХреБрдиреИ рдкрдирд┐ 16-рдмрд┐рдЯ рдирдореНрдмрд░рд╣рд░реВрдХреЛ рд░реВрдкрдорд╛ рддреЛрдХреНрди рд╕рдХрд┐рдиреНрдЫ, рддрд░ RFC6996 - 64512-65534 рд╕рдорд╛рд╡реЗрд╢реА рджреНрд╡рд╛рд░рд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдирд┐рдЬреА рджрд╛рдпрд░рд╛рдмрд╛рдЯ AS рдирдореНрдмрд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБ рд░рд╛рдореНрд░реЛ рдЕрднреНрдпрд╛рд╕ рд╣реЛ (рддреНрдпрд╣рд╛рдБ 32-bit ASNs рдХреЛ рд▓рд╛рдЧрд┐ рдврд╛рдБрдЪрд╛ рдЫ, рддрд░ рд╣рд╛рдореНрд░реЛ рдорд╛рдорд▓рд╛ рдорд╛ рдпреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрдорд╛ overkill рдЫ)ред рд╡рд░реНрдгрди рдЧрд░рд┐рдПрдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рдирд▓реЗ eBGP рдкрд┐рдпрд░рд┐рдЩ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджрдЫ, рдЬрд╕рдорд╛ рд░рд╛рдЙрдЯрд┐рдЩ рд╕реЗрд╡рд╛ рд░ рд░рд╛рдЙрдЯрд░рдХреЛ рд╕реНрд╡рд╛рдпрддреНрдд рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрдХреЛ рд╕рдВрдЦреНрдпрд╛ рдлрд░рдХ рд╣реБрдиреБрдкрд░реНрдЫред

рддрдкрд╛рдИрдВрд▓реЗ рджреЗрдЦреНрди рд╕рдХреНрдиреБрд╣реБрдиреЗ рд░реВрдкрдорд╛, рд╕реЗрд╡рд╛рд▓рд╛рдИ рд░рд╛рдЙрдЯрд░рдХреЛ IP рдареЗрдЧрд╛рдирд╛ рдерд╛рд╣рд╛ рд╣реБрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рддреНрдпрд╕реИрд▓реЗ рдпрджрд┐ рддрдкрд╛рдИрдВрд╕рдБрдЧ рдЧрддрд┐рд╢реАрд▓ рд╡рд╛ рдЧреИрд░-рд░реВрдЯреЗрдмрд▓ рдирд┐рдЬреА (RFC1918) рд╡рд╛ рд╕рд╛рдЭрд╛ (RFC6598) рдареЗрдЧрд╛рдирд╛ рдЫ рднрдиреЗ, рддрдкрд╛рдИрдВрд╕рдБрдЧ рдмрд╛рд╣реНрдпрдорд╛ рдкрд┐рдпрд░рд┐рдЩ рдмрдврд╛рдЙрдиреЗ рд╡рд┐рдХрд▓реНрдк рдЫреИрдиред рдЗрдиреНрдЯрд░рдлреЗрд╕, рддрд░ рд╕реЗрд╡рд╛ рдЕрдЭреИ рдкрдирд┐ рд╕реБрд░реБрдЩ рднрд┐рддреНрд░ рдХрд╛рдо рдЧрд░реНрдиреЗрдЫред

рдпреЛ рдкрдирд┐ рд╕реНрдкрд╖реНрдЯ рдЫ рдХрд┐ рдПрдХ рд╕реЗрд╡рд╛рдмрд╛рдЯ рддрдкрд╛рдИрд▓реЗ рдзреЗрд░реИ рдлрд░рдХ рд░рд╛рдЙрдЯрд░рд╣рд░реВрд▓рд╛рдИ рдорд╛рд░реНрдЧрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ - рдХреЗрд╡рд▓ рдкреНрд░реЛрдЯреЛрдХрд▓ bgp рд╕реЗрдХреНрд╕рди рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдЧрд░реЗрд░ рд░ рдЫрд┐рдореЗрдХреАрдХреЛ IP рдареЗрдЧрд╛рдирд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реЗрд░ рддрд┐рдиреАрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рдирдХреНрдХрд▓ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддреНрдпрд╕реИрд▓реЗ рдЙрджрд╛рд╣рд░рдгрд▓реЗ рд╕реБрд░реБрдЩ рдмрд╛рд╣рд┐рд░ рдкрд┐рдпрд░рд┐рдЩрдХрд╛ рд▓рд╛рдЧрд┐ рд╕реЗрдЯрд┐рдЩрд╣рд░реВ рджреЗрдЦрд╛рдЙрдБрдЫ, рд╕рдмреИрднрдиреНрджрд╛ рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рд░реВрдкрдорд╛ред рддрджрдиреБрд╕рд╛рд░ рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдорд╛ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реЗрд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рд╕реБрд░реБрдЩрдорд╛ рд╣рдЯрд╛рдЙрди рд╕рдЬрд┐рд▓реЛ рдЫред

рд░рд╛рдЙрдЯрд┐рдВрдЧ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрджреИ

рдЕрдм рд╣рд╛рдореАрд▓рд╛рдИ рд╡рд╛рд╕реНрддрд╡рдорд╛, рдЙрдкрд╕рд░реНрдЧрд╣рд░реВ рд░ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреА рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЬреБрди рдЕрдШрд┐рд▓реНрд▓реЛ рдЪрд░рдгрдорд╛ рдкреНрд░реЛрдЯреЛрдХрд▓ рд╕реНрдЯреНрдпрд╛рдЯрд┐рдХрдорд╛ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдпреЛ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдлрд╛рдЗрд▓ рд▓рд┐рдиреНрдЫреМрдВ рд░ рдирд┐рдореНрди рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реА рдЖрд╡рд╢реНрдпрдХ рдлрд╛рдЗрд▓рд╣рд░реВ рдмрдирд╛рдЙрдБрдЫреМрдВ, рдпрд╕рдорд╛ рд░рд╛рдЦрд┐рдПрдХреЛ рдЫред /root/blacklist/makebgp

#!/bin/bash
cut -d";" -f1 /root/z-i/dump.csv| tr '|' 'n' |  tr -d ' ' > /root/blacklist/tmpaddr.txt
cat /root/blacklist/tmpaddr.txt | grep / | sed 's_.*_route & reject;_' > /etc/bird/pfxlist.txt
cat /root/blacklist/tmpaddr.txt | sort | uniq | grep -Eo "([0-9]{1,3}[.]){3}[0-9]{1,3}" | sed 's_.*_route &/32 reject;_' > /etc/bird/iplist.txt
/etc/init.d/bird reload
logger 'bgp list compiled'

рдпрд╕рд▓рд╛рдИ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрдирдпреЛрдЧреНрдп рдмрдирд╛рдЙрди рдирдмрд┐рд░реНрд╕рдиреБрд╣реЛрд╕реН

chmod +x /root/blacklist/makebgp

рдЕрдм рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ /etc/bird рдорд╛ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐ рдЕрд╡рд▓реЛрдХрди рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рд╕рдореНрднрд╡рддрдГ, рдпрд╕ рдХреНрд╖рдгрдорд╛ рдЪрд░рд╛рд▓реЗ рддрдкрд╛рдИрдВрдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫреИрди, рдХрд┐рдирднрдиреЗ рдЕрдШрд┐рд▓реНрд▓реЛ рдЪрд░рдгрдорд╛ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдЕрд╣рд┐рд▓реЗрд╕рдореНрдо рдЕрд╡рд╕реНрдерд┐рдд рдирднрдПрдХрд╛ рдлрд╛рдЗрд▓рд╣рд░реВ рдЦреЛрдЬреНрди рднрдиреНрдиреБрднрдПрдХреЛ рдерд┐рдпреЛред рддреНрдпрд╕рдХрд╛рд░рдг, рд╣рд╛рдореА рдпрд╕рд▓рд╛рдИ рд╕реБрд░реБ рдЧрд░реНрдЫреМрдВ рд░ рдЬрд╛рдБрдЪ рдЧрд░реНрдЫреМрдВ рдХрд┐ рдпреЛ рд╕реБрд░реБ рднрдПрдХреЛ рдЫ:

systemctl start bird
birdc show route

рджреЛрд╕реНрд░реЛ рдЖрджреЗрд╢рдХреЛ рдЖрдЙрдЯрдкреБрдЯрд▓реЗ рд▓рдЧрднрдЧ 80 рд░реЗрдХрд░реНрдбрд╣рд░реВ рджреЗрдЦрд╛рдЙрдиреБрдкрд░реНрджрдЫ (рдпреЛ рдЕрд╣рд┐рд▓реЗрдХреЛ рд▓рд╛рдЧрд┐ рд╣реЛ, рддрд░ рдЬрдм рддрдкрд╛рдЗрдБ рдпрд╕рд▓рд╛рдИ рд╕реЗрдЯ рдЕрдк рдЧрд░реНрдиреБрд╣реБрдиреНрдЫ, рд╕рдмреИ рдХреБрд░рд╛ рдиреЗрдЯрд╡рд░реНрдХ рдмреНрд▓рдХ рдЧрд░реНрдиреЗ RKN рдХреЛ рдЬреЛрд╕рд┐рд▓реЛрдкрдирдорд╛ рдирд┐рд░реНрднрд░ рд╣реБрдиреЗрдЫ) рдХреЗрд╣рд┐ рдпрд╕реНрддреЛ:

54.160.0.0/12      unreachable [static_bgp 2018-04-19] * (200)

рдЯреЛрд▓реА

birdc show protocol

рд╕реЗрд╡рд╛ рднрд┐рддреНрд░ рдкреНрд░реЛрдЯреЛрдХрд▓ рдХреЛ рд╕реНрдерд┐рддрд┐ рджреЗрдЦрд╛рдЙрдиреЗрдЫред рддрдкрд╛рдИрдВрд▓реЗ рд░рд╛рдЙрдЯрд░ рдХрдиреНрдлрд┐рдЧрд░ рдирдЧрд░реЗрд╕рдореНрдо (рдЕрд░реНрдХреЛ рдмрд┐рдиреНрджреБ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН), OurRouter рдкреНрд░реЛрдЯреЛрдХрд▓ рд╕реНрдЯрд╛рд░реНрдЯ рд╕реНрдЯреЗрдЯ (рдЬрдбрд╛рди рд╡рд╛ рд╕рдХреНрд░рд┐рдп рдЪрд░рдг) рдорд╛ рд╣реБрдиреЗрдЫ, рд░ рд╕рдлрд▓ рдЬрдбрд╛рди рдкрдЫрд┐ рдпреЛ рдорд╛рдерд┐рдХреЛ рдЕрд╡рд╕реНрдерд╛ (рд╕реНрдерд╛рдкрд┐рдд рдЪрд░рдг) рдорд╛ рдЬрд╛рдиреНрдЫред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рдореЗрд░реЛ рдкреНрд░рдгрд╛рд▓реА рдорд╛ рдпреЛ рдЖрджреЗрд╢ рдХреЛ рдЖрдЙрдЯрдкреБрдЯ рдпрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ:

BIRD 1.6.3 ready.
name     proto    table    state  since       info
kernel1  Kernel   master   up     2018-04-19
device1  Device   master   up     2018-04-19
static_bgp Static   master   up     2018-04-19
direct1  Direct   master   up     2018-04-19
RXXXXXx1 BGP      master   up     13:10:22    Established
RXXXXXx2 BGP      master   up     2018-04-24  Established
RXXXXXx3 BGP      master   start  2018-04-22  Connect       Socket: Connection timed out
RXXXXXx4 BGP      master   up     2018-04-24  Established
RXXXXXx5 BGP      master   start  2018-04-24  Passive

рд░рд╛рдЙрдЯрд░ рдЬрдбрд╛рди рдЧрд░реНрджреИ

рд╕рдмреИрдЬрдирд╛ рд╕рд╛рдпрдж рдпреЛ рдлреБрдЯрдХреНрд▓реЛрде рдкрдвреЗрд░ рдердХрд┐рдд рдЫрдиреН, рддрд░ рдорди рд░рд╛рдЦреНрдиреБрд╣реЛрд╕реН - рдЕрдиреНрддреНрдп рдирдЬрд┐рдХ рдЫред рдпрд╕рдмрд╛рд╣реЗрдХ, рдпрд╕ рдЦрдгреНрдбрдорд╛ рдо рдЪрд░рдг-рджрд░-рдЪрд░рдг рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рджрд┐рди рд╕рдХреНрд╖рдо рд╣реБрдиреЗ рдЫреИрди - рдпреЛ рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрдорд╛рддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдлрд░рдХ рд╣реБрдиреЗрдЫред

рдпрджреНрдпрдкрд┐, рдо рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреЗрд╣реА рдЙрджрд╛рд╣рд░рдгрд╣рд░реВ рджреЗрдЦрд╛рдЙрди рд╕рдХреНрдЫреБред рдореБрдЦреНрдп рддрд░реНрдХ рднрдиреЗрдХреЛ BGP рдкрд┐рдпрд░рд┐рдЩ рдмрдврд╛рдЙрдиреБ рд╣реЛ рд░ рдиреЗрдХреНрд╕реНрдЯрд╣рдкрд▓рд╛рдИ рд╕рдмреИ рдкреНрд░рд╛рдкреНрдд рдЙрдкрд╕рд░реНрдЧрд╣рд░реВрдорд╛ рддреЛрдХреНрдиреБ рд╣реЛ, рд╣рд╛рдореНрд░реЛ рд╕реБрд░реБрдЩ (рдпрджрд┐ рд╣рд╛рдореАрд▓реЗ p2p рдЗрдиреНрдЯрд░рдлреЗрд╕ рдорд╛рд░реНрдлрдд рдЯреНрд░рд╛рдлрд┐рдХ рдкрдард╛рдЙрди рдЖрд╡рд╢реНрдпрдХ рдЫ рднрдиреЗ) рд╡рд╛ рдЯреНрд░рд╛рдлрд┐рдХ рдЗрдерд░рдиреЗрдЯрдорд╛ рдЬрд╛рдиреНрдЫ рднрдиреЗ рдиреЗрдХреНрд╕реНрдЯрд╣рдк рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рд▓рд╛рдИ рдФрдВрд▓реНрдпрд╛рдЙрдБрджреИ)ред

рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, RouterOS рдорд╛ Mikrotik рдорд╛ рдпреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╣рд▓ рдЧрд░рд┐рдПрдХреЛ рдЫ

/routing bgp instance set default as=64999 ignore-as-path-len=yes router-id=172.30.1.2
/routing bgp peer add in-filter=dynamic-in multihop=yes name=VPS remote-address=194.165.22.146 remote-as=64998 ttl=default
/routing filter add action=accept chain=dynamic-in protocol=bgp comment="Set nexthop" set-in-nexthop=172.30.1.1

рд░ Cisco IOS рдорд╛ - рдпреЛ рдЬрд╕реНрддреИ

router bgp 64999
  neighbor 194.165.22.146 remote-as 64998
  neighbor 194.165.22.146 route-map BGP_NEXT_HOP in
  neighbor 194.165.22.146 ebgp-multihop 250
!
route-map BGP_NEXT_HOP permit 10
  set ip next-hop 172.30.1.1

рдпрджрд┐ рдПрдЙрдЯреИ рд╕реБрд░реБрдЩ BGP рдкрд┐рдпрд░рд┐рдЩ рд░ рдЙрдкрдпреЛрдЧреА рдЯреНрд░рд╛рдлрд┐рдХ рдкреНрд░рд╕рд╛рд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рджреБрд╡реИ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ рднрдиреЗ, рдпреЛ рдиреЗрдХреНрд╕реНрдЯрд╣рдк рд╕реЗрдЯ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫреИрди; рдпреЛ рдкреНрд░реЛрдЯреЛрдХрд▓ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╕рд╣реА рд░реВрдкрдорд╛ рд╕реЗрдЯ рдЧрд░рд┐рдиреЗрдЫред рддрд░ рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рд╕реЗрдЯ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ, рдпрд╕рд▓реЗ рдпрд╕рд▓рд╛рдИ рдЦрд░рд╛рдм рдкрдирд┐ рдЧрд░реНрджреИрдиред

рдЕрдиреНрдп рдкреНрд▓реЗрдЯрдлрд░реНрдорд╣рд░реВрдорд╛, рддрдкрд╛рдИрдВрд▓реЗ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдЖрдлреИрдВ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрдиреБ рдкрд░реНрдЫ, рддрд░ рдпрджрд┐ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХреБрдиреИ рдХрдард┐рдирд╛рдЗ рдЫ рднрдиреЗ, рдЯрд┐рдкреНрдкрдгреАрд╣рд░реВрдорд╛ рд▓реЗрдЦреНрдиреБрд╣реЛрд╕реН, рдо рдорджреНрджрдд рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреЗрдЫреБред

рддрдкрд╛рдИрдВрдХреЛ BGP рд╕рддреНрд░ рд╕реБрд░реБ рднрдПрдкрдЫрд┐, рдареВрд▓рд╛ рдиреЗрдЯрд╡рд░реНрдХрд╣рд░реВрдорд╛ рдорд╛рд░реНрдЧрд╣рд░реВ рдЖрдЗрдкреБрдЧреЗрдХрд╛ рдЫрдиреН рд░ рддрд╛рд▓рд┐рдХрд╛рдорд╛ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░рд┐рдПрдХрд╛ рдЫрдиреН, рддрд┐рдиреАрд╣рд░реВрдмрд╛рдЯ рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдорд╛ рдЯреНрд░рд╛рдлрд┐рдХ рдкреНрд░рд╡рд╛рд╣ рднрдПрдХреЛ рдЫ рд░ рдЖрдирдиреНрдж рдирдЬрд┐рдХ рдЫ, рддрдкрд╛рдИрдВ рдкрдХреНрд╖реА рд╕реЗрд╡рд╛рдорд╛ рдлрд░реНрдХрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ рддреНрдпрд╣рд╛рдБ рдЬрдбрд╛рди рдЧрд░реНрдиреЗ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рд▓рд╛рдИ рдЕрдирдХрдореЗрдиреНрдЯ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреА, рддреНрдпрд╕ рдкрдЫрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдиреБрд╣реЛрд╕реН

systemctl reload bird

рд░ рд╣реЗрд░реНрдиреБрд╣реЛрд╕реН рдХрд╕рд░реА рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рдЙрдЯрд░рд▓реЗ рдпреА реорел рд╣рдЬрд╛рд░ рдорд╛рд░реНрдЧрд╣рд░реВ рд╕реНрдерд╛рдирд╛рдиреНрддрд░рдг рдЧрд░реНрдпреЛред рдЕрдирдкреНрд▓рдЧ рдЧрд░реНрди рддрдпрд╛рд░ рд╣реБрдиреБрд╣реЛрд╕реН рд░ рдпрд╕рдХреЛ рд╕рд╛рде рдХреЗ рдЧрд░реНрдиреЗ рдмрд╛рд░реЗ рд╕реЛрдЪреНрдиреБрд╣реЛрд╕реН :)

рдХреБрд▓

рд╡рд┐рд╢реБрджреНрдз рд╕реИрджреНрдзрд╛рдиреНрддрд┐рдХ рд░реВрдкрдорд╛, рдорд╛рдерд┐ рд╡рд░реНрдгрди рдЧрд░рд┐рдПрдХрд╛ рдЪрд░рдгрд╣рд░реВ рдкреВрд░рд╛ рдЧрд░реЗрдкрдЫрд┐, рддрдкрд╛рдИрдВрд╕рдБрдЧ рдЕрдм рдПрдХ рд╕реЗрд╡рд╛ рдЫ рдЬрд╕рд▓реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЯреНрд░рд╛рдлрд┐рдХрд▓рд╛рдИ рд░реВрд╕реА рд╕рдВрдШрдорд╛ рдкреНрд░рддрд┐рдмрдиреНрдзрд┐рдд рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдорд╛ рд░рд┐рдбрд┐рд░реЗрдХреНрдЯ рдЧрд░реНрдЫ рдлрд┐рд▓реНрдЯрд░рд┐рдЩ рдкреНрд░рдгрд╛рд▓реА рдкрдЫрд┐ред

рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдпрд╕рд▓рд╛рдИ рд╕реБрдзрд╛рд░ рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкрд░реНрд▓ рд╡рд╛ рдкрд╛рдЗрдерди рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реВрдЪреА рд╕рдВрдХреНрд╖реЗрдк рдЧрд░реНрди рдпреЛ рдПрдХрджрдо рд╕рдЬрд┐рд▓реЛ рдЫред Net::CIDR::Lite рд▓реЗ реорел рд╣рдЬрд╛рд░ рдЙрдкрд╕рд░реНрдЧрд╣рд░реВрд▓рд╛рдИ ремреж (рд╣рдЬрд╛рд░ рд╣реЛрдЗрди) рдорд╛ рдкрд░рд┐рдгрдд рдЧрд░реНрдЫ, рддрд░ рдирд┐рд╕реНрд╕рдиреНрджреЗрд╣, рдмреНрд▓рдХ рдЧрд░рд┐рдПрдХреЛ рднрдиреНрджрд╛ рдзреЗрд░реИ рдареВрд▓рд╛ рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫред

рд╕реЗрд╡рд╛ ISO/OSI рдореЛрдбреЗрд▓рдХреЛ рддреЗрд╕реНрд░реЛ рд╕реНрддрд░рдорд╛ рд╕рдЮреНрдЪрд╛рд▓рди рднрдПрдХреЛ рд╣реБрдирд╛рд▓реЗ, рдпрджрд┐ рдпрд╕рд▓реЗ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрдорд╛ рд░реЗрдХрд░реНрдб рдЧрд░рд┐рдПрдХреЛ рдЧрд▓рдд рдареЗрдЧрд╛рдирд╛рдорд╛ рд╕рдорд╛рдзрд╛рди рдЧрд░реНрдЫ рднрдиреЗ рдпрд╕рд▓реЗ рддрдкрд╛рдЗрдБрд▓рд╛рдИ рд╕рд╛рдЗрдЯ/рдкреГрд╖реНрда рдмреНрд▓рдХ рдЧрд░реНрдирдмрд╛рдЯ рдмрдЪрд╛рдЙрдиреЗ рдЫреИрдиред рддрд░ рд░рдЬрд┐рд╕реНрдЯреНрд░реАрд╕рдБрдЧреИ, рдлрд╛рдЗрд▓ nxdomain.txt github рдмрд╛рдЯ рдЖрдЙрдБрдЫ, рдЬреБрди рд╕реНрдХреНрд░рд┐рдкреНрдЯрдХреЛ рдХреЗрд╣реА рд╕реНрдЯреНрд░реЛрдХрд╣рд░реВрд╕рдБрдЧ рд╕рдЬрд┐рд▓реИрд╕рдБрдЧ рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╕реНрд░реЛрддрдорд╛ рдкрд░рд┐рдгрдд рд╣реБрдиреНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, Chrome рдорд╛ SwitchyOmega рдкреНрд▓рдЧрдЗрдиред

рдпреЛ рдкрдирд┐ рдЙрд▓реНрд▓реЗрдЦ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ рдХрд┐ рд╕рдорд╛рдзрд╛рдирд▓рд╛рдИ рдердк рдкрд░рд┐рд╖реНрдХрд░рдгрдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЫ рдпрджрд┐ рддрдкрд╛рдИрдВ рдЗрдиреНрдЯрд░рдиреЗрдЯ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рдорд╛рддреНрд░ рд╣реБрдиреБрд╣реБрдиреНрди рднрдиреЗ, рддрд░ рдХреЗрд╣рд┐ рд╕реНрд░реЛрддрд╣рд░реВ рдкрдирд┐ рдкреНрд░рдХрд╛рд╢рд┐рдд рдЧрд░реНрдиреБрд╣реЛрд╕реН (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╡рд╛ рдореЗрд▓ рд╕рд░реНрднрд░ рдпрд╕ рдЬрдбрд╛рдирдорд╛ рдЪрд▓реНрдЫ)ред рд░рд╛рдЙрдЯрд░рдХреЛ рдорд╛рдзреНрдпрдорд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░, рдпреЛ рд╕реЗрд╡рд╛рдмрд╛рдЯ рдмрд╛рд╣рд┐рд░ рдЬрд╛рдиреЗ рдЯреНрд░рд╛рдлрд┐рдХрд▓рд╛рдИ рддрдкрд╛рдИрдВрдХреЛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдареЗрдЧрд╛рдирд╛рдорд╛ рдХрдбрд╛рдЗрдХрд╛ рд╕рд╛рде рдмрд╛рдБрдзреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рдЕрдиреНрдпрдерд╛ рддрдкрд╛рдИрдВрд▓реЗ рддреА рд╕реНрд░реЛрддрд╣рд░реВрд╕рдБрдЧ рдЬрдбрд╛рди рдЧреБрдорд╛рдЙрдиреБрд╣реБрдиреЗрдЫ рдЬреБрди рд░рд╛рдЙрдЯрд░рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╛рдкреНрдд рдЙрдкрд╕рд░реНрдЧрд╣рд░реВрдХреЛ рд╕реВрдЪреАрдорд╛ рд╕рдорд╛рд╡реЗрд╢ рдЫрдиреНред

рдпрджрд┐ рддрдкрд╛рдЗрдБрд╕рдБрдЧ рдХреБрдиреИ рдкреНрд░рд╢реНрдирд╣рд░реВ рдЫрдиреН рднрдиреЗ, рд╕реЛрдзреНрдиреБрд╣реЛрд╕реН, рдо рдЬрд╡рд╛рдл рджрд┐рди рддрдпрд╛рд░ рдЫреБред

UPDред рдзрдиреНрдпрд╡рд╛рдж navion ╨╕ TerAnYu рдбрд╛рдЙрдирд▓реЛрдб рднреЛрд▓реНрдпреБрдорд╣рд░реВ рдХрдо рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреЗ git рдХреЛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ред

UPD2ред рд╕рд╣рдХрд░реНрдореАрд╣рд░реВ, рд▓реЗрдЦрдорд╛ VPS рд░ рд░рд╛рдЙрдЯрд░ рдмреАрдЪрдХреЛ рдЯрдиреЗрд▓ рд╕реЗрдЯрдЕрдк рдЧрд░реНрди рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдердкреЗрд░ рдореИрд▓реЗ рдЧрд▓реНрддреА рдЧрд░реЗ рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫред рдпрд╕рдмрд╛рдЯ рдзреЗрд░реИ рдкреНрд░рд╢реНрди рдЙрдареЗрдХрд╛ рдЫрдиреН ред
рдХреЗрд╡рд▓ рдХреЗ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдо рдлреЗрд░рд┐ рдПрдХ рдкрдЯрдХ рдиреЛрдЯ рдЧрд░реНрдиреЗрдЫреБ рдХрд┐ рдпреЛ рдЧрд╛рдЗрдб рд╕реБрд░реБ рдЧрд░реНрдиреБ рдЕрдШрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ VPN рдЯрдиреЗрд▓рд▓рд╛рдИ рдЖрд╡рд╢реНрдпрдХ рджрд┐рд╢рд╛рдорд╛ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдиреБрднрдПрдХреЛ рдЫ рд░ рдпрд╕рдХреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдЬрд╛рдБрдЪ рдЧрд░реНрдиреБрднрдпреЛ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд╡рд╛ рд╕реНрдерд┐рд░ рд░реВрдкрдорд╛ рддреНрдпрд╣рд╛рдБ рдЯреНрд░рд╛рдлрд┐рдХ рдмрджрд▓реЗрд░)ред рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдпреЛ рдЪрд░рдг рдЕрдЭреИ рдкреВрд░рд╛ рдЧрд░реНрдиреБрднрдПрдХреЛ рдЫреИрди рднрдиреЗ, рд▓реЗрдЦрдорд╛ рднрдПрдХрд╛ рдЪрд░рдгрд╣рд░реВ рдкрдЫреНрдпрд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдпрд╕рд▓реЗ рдзреЗрд░реИ рдЕрд░реНрде рд░рд╛рдЦреНрджреИрдиред рдорд╕рдБрдЧ рдпрд╕рдорд╛ рдореЗрд░реЛ рдЖрдлреНрдиреИ рдкрд╛рда рдЫреИрди, рддрд░ рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ VPS рдорд╛ рд╕реНрдерд╛рдкрд┐рдд рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдордХреЛ рдирд╛рдордХреЛ рд╕рд╛рде "рдУрдкрдирднреАрдкреАрдПрди рд╕рд░реНрднрд░ рд╕реЗрдЯрдЕрдк" рд░ рддрдкрд╛рдИрдВрдХреЛ рд░рд╛рдЙрдЯрд░рдХреЛ рдирд╛рдордХреЛ рд╕рд╛рде "рдУрдкрдирднреАрдкреАрдПрди рдХреНрд▓рд╛рдЗрдиреНрдЯ рд╕реЗрдЯ рдЕрдк рдЧрд░реНрджреИ" рдЧреБрдЧрд▓ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗред , рддрдкрд╛рдИрдВрд▓реЗ рд╕рдореНрднрд╡рддрдГ рдпрд╕ рд╡рд┐рд╖рдпрдорд╛ рдзреЗрд░реИ рд▓реЗрдЦрд╣рд░реВ рдлреЗрд▓рд╛ рдкрд╛рд░реНрдиреБрд╣реБрдиреЗрдЫ, Habr├й рдорд╛ред

UPD3ред рдЕрдХреБрд╢рд▓ рдореИрд▓реЗ рдПрдЙрдЯрд╛ рдХреЛрдб рд▓реЗрдЦреЗрдХреЛ рдЫреБ рдЬрд╕рд▓реЗ рдбрдореНрдк. csv рд▓рд╛рдИ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рд╛рд░рд╛рдВрд╢рдХреЛ рд╕рд╛рде рдЪрд░рд╛рдХреЛ рд▓рд╛рдЧрд┐ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдлрд╛рдЗрд▓рдорд╛ рдкрд░рд┐рдгрдд рдЧрд░реНрдЫред рддрд╕рд░реНрде, рдЦрдгреНрдб "рд░рд╛рдЙрдЯрд┐рдВрдЧ рд╕реЗрд╡рд╛рдХреЛ рд▓рд╛рдЧрд┐ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрджреИ" рдпрд╕рдХреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд▓ рдЧрд░реЗрд░ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред https://habr.com/post/354282/#comment_10782712

UPD4ред рддреНрд░реБрдЯрд┐рд╣рд░реВрдорд╛ рд╕рд╛рдиреЛ рдХрд╛рдо (рдореИрд▓реЗ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдкрд╛рдардорд╛ рдердкреЗрдХреЛ рдЫреИрди):
1) рдмрд░реБ systemctl рдкреБрди: рд▓реЛрдб рдмрд░реНрдб рдпреЛ рдЖрджреЗрд╢ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдЕрд░реНрде рдмрдирд╛рдЙрдБрдЫ birdc рдХрдиреНрдлрд┐рдЧрд░.
2) Mikrotik рд░рд╛рдЙрдЯрд░рдорд╛, рдиреЗрдХреНрд╕реНрдЯрд╣рдкрд▓рд╛рдИ рд╕реБрд░реБрдЩрдХреЛ рджреЛрд╕реНрд░реЛ рддрд░реНрдлрдХреЛ IP рдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ /рд░рд╛рдЙрдЯрд┐рдВрдЧ рдлрд┐рд▓реНрдЯрд░ рдХрд╛рд░реНрдп рдердкреНрдиреБрд╣реЛрд╕реН=рдЕрдХреНрд╕реЗрдкреНрдЯ рдЪреЗрди=рдбрд╛рдпрдирд╛рдорд┐рдХ-рдЗрди рдкреНрд░реЛрдЯреЛрдХрд▓=bgp рдЯрд┐рдкреНрдкрдгреА=┬╗рд╕реЗрдЯ рдиреЗрдХреНрд╕реНрдЯрд╣рдк┬╗ рд╕реЗрдЯ-рдЗрди-рдиреЗрдХреНрд╕реНрдЯрдк=резренреи.рейреж.рез.рез рдпреЛ рдХреБрдиреИ рдареЗрдЧрд╛рдирд╛ рдмрд┐рдирд╛, рдЯрдиреЗрд▓ рдЗрдиреНрдЯрд░рдлреЗрд╕рдорд╛ рд╕реАрдзрд╛ рдорд╛рд░реНрдЧ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рдЕрд░реНрде рдмрдирд╛рдЙрдБрдЫ /рд░рд╛рдЙрдЯрд┐рдВрдЧ рдлрд┐рд▓реНрдЯрд░ рдХрд╛рд░реНрдп рдердкреНрдиреБрд╣реЛрд╕реН=рдЕрдХреНрд╕реЗрдкреНрдЯ рдЪреЗрди=рдбрд╛рдпрдирд╛рдорд┐рдХ-рдЗрди рдкреНрд░реЛрдЯреЛрдХрд▓=bgp рдЯрд┐рдкреНрдкрдгреА=┬╗рд╕реЗрдЯ рдиреЗрдХреНрд╕реНрдЯрд╣рдк┬╗ рд╕реЗрдЯ-рдЗрди-рдиреЗрдХреНрд╕рдердк-рдбрд╛рдпрд░реЗрдХреНрдЯ=<рдЗрдиреНрдЯрд░рдлреЗрд╕ рдирд╛рдо>

UPD5ред рдирдпрд╛рдБ рд╕реЗрд╡рд╛ рджреЗрдЦрд╛ рдкрд░реЗрдХреЛ рдЫ https://antifilter.download, рдЬрд╣рд╛рдБрдмрд╛рдЯ рддрдкрд╛рдИрдВрд▓реЗ IP рдареЗрдЧрд╛рдирд╛рд╣рд░реВрдХреЛ рддрдпрд╛рд░-рдмрдирд╛рдЗрдПрдХреЛ рд╕реВрдЪреАрд╣рд░реВ рд▓рд┐рди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд╣рд░реЗрдХ рдЖрдзрд╛ рдШрдгреНрдЯрд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХред рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖рдорд╛, рдмрд╛рдБрдХреА рд░рд╣реЗрдХрд╛ рд╕рдмреИ рд░реЗрдХрд░реНрдбрд╣рд░реВ рд╕рдореНрдмрдиреНрдзрд┐рдд "рдорд╛рд░реНрдЧ... рдЕрд╕реНрд╡реАрдХрд╛рд░" рдХреЛ рд╕рд╛рде рдлреНрд░реЗрдо рдЧрд░реНрди рд╣реЛред
рд░ рдпрд╕ рдмрд┐рдиреНрджреБрдорд╛, рд╕рд╛рдпрдж, рдпреЛ рддрдкрд╛рдЗрдБрдХреЛ рд╣рдЬреБрд░рдЖрдорд╛рд▓рд╛рдИ рд░рдЧ рдЧрд░реНрди рд░ рд▓реЗрдЦ рдЕрдкрдбреЗрдЯ рдЧрд░реНрди рдкрд░реНрдпрд╛рдкреНрдд рдЫред

UPD6ред рдпреЛ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЙрди рдирдЪрд╛рд╣рдиреЗ, рддрд░ рд╕реБрд░реБ рдЧрд░реНрди рдЪрд╛рд╣рдиреЗрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рд▓реЗрдЦрдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рд╕рдВрд╕реНрдХрд░рдг - рдпрд╣рд╛рдБ.

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди