рд░рд╛рдЙрдЯрд░рдУрдПрд╕ рдореЗрдВ рдмреИрдХрдкреЛрд░реНрдЯ рднреЗрджреНрдпрддрд╛ рд╕реИрдХрдбрд╝реЛрдВ рд╣рдЬрд╛рд░реЛрдВ рдЙрдкрдХрд░рдгреЛрдВ рд╕реЗ рд╕рдордЭреМрддрд╛ рдХрд░рддреА рд╣реИ



рд░рд╛рдЙрдЯрд░рдУрдПрд╕ (рдорд┐рдХрд░реЛрдЯрд┐рдХ) рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдЬреЛрдЦрд┐рдо рдореЗрдВ рд╣рдЬрд╛рд░реЛрдВ рдиреЗрдЯрд╡рд░реНрдХ рдЙрдкрдХрд░рдгреЛрдВ рдХреЛ рд▓рдЧрд╛рддреА рд╣реИред рднреЗрджреНрдпрддрд╛ Winbox рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ DNS рдХреИрд╢ рдХреА рд╡рд┐рд╖рд╛рдХреНрддрддрд╛ рд╕реЗ рдЬреБрдбрд╝реА рд╣реИ рдФрд░ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдкреБрд░рд╛рдиреЗ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде) рдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рдлрд░реНрдорд╡реЗрдпрд░ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред



рднреЗрджреНрдпрддрд╛ рд╡рд┐рд╡рд░рдг


рд░рд╛рдЙрдЯрд░рдУрдПрд╕ рдЯрд░реНрдорд┐рдирд▓ DNS рд▓реБрдХрдЕрдк рдХреЗ рд▓рд┐рдП рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рдХрдорд╛рдВрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдпрд╣ рдЕрдиреБрд░реЛрдз рдПрдХ рдмрд╛рдЗрдирд░реА рдирд╛рдо рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрдИ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЬреЛ рд░рд╛рдЙрдЯрд░рдУрдПрд╕ рд╡рд┐рдирдмреЙрдХреНрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИред рдЙрдЪреНрдЪ рд╕реНрддрд░ рдкрд░, Winbox рдкреЛрд░реНрдЯ рдХреЛ рднреЗрдЬреЗ рдЧрдП "рд╕рдВрджреЗрд╢" рдХреЛ рд░рд╛рдЙрдЯрд░рдУрдПрд╕ рдореЗрдВ рдПрдХ рд╕рд░рдгреА-рдЖрдзрд╛рд░рд┐рдд рдирдВрдмрд░рд┐рдВрдЧ рдпреЛрдЬрдирд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рд╡рд┐рднрд┐рдиреНрди рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдореЗрдВ рднреЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, RouterOS рдореЗрдВ DNS рд╕рд░реНрд╡рд░ рд╕реБрд╡рд┐рдзрд╛ рдЕрдХреНрд╖рдо рд╣реИред

рдЫрд╡рд┐

рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╕рд░реНрд╡рд░ рдлрд╝рдВрдХреНрд╢рди рдЕрдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд░рд╛рдЙрдЯрд░ рдЕрдкрдиреЗ DNS рдХреИрд╢ рдХреЛ рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЬрдм рд╣рдо winbox_dns_request рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, example.com, рд░рд╛рдЙрдЯрд░ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреИрд╢ рдХрд░реЗрдЧрд╛ред

рдЫрд╡рд┐

рдЪреВрдВрдХрд┐ рд╣рдо DNS рд╕рд░реНрд╡рд░ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрдиреБрд░реЛрдз рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдЧрд▓рдд рдкрддреЗ рджрд░реНрдЬ рдХрд░рдирд╛ рддреБрдЪреНрдЫ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рд╣рдореЗрд╢рд╛ IP рдкрддреЗ 192.168.88.250 рд╡рд╛рд▓реЗ A рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд▓рд┐рдк рдХреНрд▓рд╛рдЙрд╕ рд╕реЗ DNS рд╕рд░реНрд╡рд░ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

def dns_response(data): request = DNSRecord.parse(data) reply = DNSRecord(DNSHeader( id=request.header.id, qr=1, aa=1, ra=1), q=request.q) qname = request.q.qname qn = str(qname) reply.add_answer(RR(qn,ttl=30,rdata=A("192.168.88.250"))) print("---- Reply:\n", reply) return reply.pack() 

рдЕрдм, рдпрджрд┐ рдЖрдк Winbox рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ example.com рджреЗрдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд░рд╛рдЙрдЯрд░ рдХрд╛ DNS рдХреИрд╢ рдЬрд╝рд╣рд░ рд╣реЛ рдЧрдпрд╛ рд╣реИред

рдЫрд╡рд┐

рдмреЗрд╢рдХ, рд╡рд┐рд╖рд╛рдХреНрддрддрд╛ example.com рдмрд╣реБрдд рдЙрдкрдпреЛрдЧреА рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд░рд╛рдЙрдЯрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдБрдХрд┐, рд░рд╛рдЙрдЯрд░ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ.m.mrotrotik.com, cloud.mikrotik.com, cloud2.mikrotik.com рдФрд░ download.mikrotik.comред рдФрд░ рдПрдХ рдФрд░ рдЧрд▓рддреА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдПрдХ рдмрд╛рд░ рдореЗрдВ рдЙрди рд╕рднреА рдХреЛ рдЬрд╣рд░ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИред

 def dns_response(data): request = DNSRecord.parse(data) reply = DNSRecord(DNSHeader( id=request.header.id, qr=1, aa=1, ra=1), q=request.q) qname = request.q.qname qn = str(qname) reply.add_answer(RR(qn,ttl=30,rdata=A("192.168.88.250"))) reply.add_answer(RR("upgrade.mikrotik.com",ttl=604800, rdata=A("192.168.88.250"))) reply.add_answer(RR("cloud.mikrotik.com",ttl=604800, rdata=A("192.168.88.250"))) reply.add_answer(RR("cloud2.mikrotik.com",ttl=604800, rdata=A("192.168.88.250"))) reply.add_answer(RR("download.mikrotik.com",ttl=604800, rdata=A("192.168.88.250"))) print("---- Reply:\n", reply) return reply.pack() 

рд░рд╛рдЙрдЯрд░ рдПрдХ рдЕрдиреБрдорддрд┐ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╣рдо рдкрд╛рдВрдЪ рд╡рд╛рдкрд╕ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рд░рд╛рдЙрдЯрд░ рдЗрди рд╕рднреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдЧрд▓рдд рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╢ рдХрд░рддрд╛ рд╣реИред

рдЫрд╡рд┐

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рд╣рдорд▓рд╛ рддрдм рднреА рдЙрдкрдпреЛрдЧреА рд╣реИ рдЬрдм рд░рд╛рдЙрдЯрд░ рдПрдХ DNS рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд░рд╛рдЙрдЯрд░ рдХреЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

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


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

рд╕реБрд░рдХреНрд╖рд╛


рдмрд╕ Winbox рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдирд╛ рдЗрди рд╣рдорд▓реЛрдВ рд╕реЗ рдмрдЪрд╛рддрд╛ рд╣реИред Winbox рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХреА рд╕реБрд╡рд┐рдзрд╛ рдХреЗ рдмрд╛рд╡рдЬреВрдж, SSH рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИред

Source: https://habr.com/ru/post/hi473676/


All Articles