RouterOS (Mikrotik) āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻĄāĻŋāĻāĻžāĻāĻ¸āĻā§āĻ˛āĻŋāĻā§ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§āĻāĻžāĻŦā§ āĻĄāĻžāĻāĻ¨āĻā§āĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻ¯āĻŧā§āĻ āĻšāĻžāĻāĻžāĻ° āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĄāĻŋāĻāĻžāĻāĻ¸āĻā§ āĻŦāĻŋāĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤ āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻž Winbox āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ā§āĻ° DNS āĻā§āĻ¯āĻžāĻļā§ āĻŦāĻŋāĻˇāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻĄāĻŋāĻāĻžāĻāĻ¸ā§ āĻĒā§āĻ°āĻžāĻ¨ā§ (āĻāĻāĻāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ°āĻŋāĻ¸ā§āĻ āĻ¸āĻš) āĻŦāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻĢāĻžāĻ°ā§āĻŽāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧā§ˇ
āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻžāĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ
RouterOS āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛ DNS āĻ˛ā§āĻāĻāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻ āĻ
āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻ¨āĻžāĻŽā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻāĻžāĻ°ā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ°āĻžāĻāĻāĻžāĻ°āĻāĻāĻ¸-āĻāĻ° āĻāĻāĻ¨āĻŦāĻā§āĻ¸ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻŦāĻšā§ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻšāĻ˛ āĻ°āĻŋāĻāĻ˛āĻāĻžāĻ°āĨ¤ āĻāĻāĻāĻŋ āĻāĻā§āĻ āĻ¸ā§āĻ¤āĻ°ā§, āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻŦāĻā§āĻ¸ āĻĒā§āĻ°ā§āĻā§ āĻĒā§āĻ°ā§āĻ°āĻŋāĻ¤ "āĻŦāĻžāĻ°ā§āĻ¤āĻž" āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻ°ā§-āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻ¨āĻŽā§āĻŦāĻ° āĻ¸ā§āĻāĻŋāĻŽā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ°āĻžāĻāĻāĻžāĻ°āĻāĻāĻ¸-āĻāĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ°āĻžāĻāĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
DNS āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ°āĻžāĻāĻāĻžāĻ°āĻāĻāĻ¸-āĻ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻ āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻĨāĻžāĻā§āĨ¤
āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻŽāĻ¨āĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĢāĻžāĻāĻļāĻ¨ āĻ
āĻā§āĻˇāĻŽ āĻĨāĻžāĻāĻž āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§āĻ, āĻ°āĻžāĻāĻāĻžāĻ° āĻ¤āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ DNS āĻā§āĻ¯āĻžāĻļā§ āĻŦāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻā§āĨ¤
āĻāĻŽāĻ°āĻž winbox_dns_request āĻ¯ā§āĻŽāĻ¨ example.com āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻŋ, āĻ°āĻžāĻāĻāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻŦā§āĨ¤
āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻŽāĻ°āĻž DNS āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¯āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ
āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤, āĻ¤āĻžāĻ āĻā§āĻ˛ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻž āĻ¤ā§āĻā§āĻā§ˇ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻŋ āĻĨā§āĻā§ 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()
āĻāĻāĻ¨ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ example.com āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ Winbox āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦā§āĻ¨ āĻ¯ā§ āĻ°āĻžāĻāĻāĻžāĻ°ā§āĻ° DNS āĻā§āĻ¯āĻžāĻļā§ āĻŦāĻŋāĻˇ āĻšāĻ¯āĻŧā§ āĻā§āĻā§āĨ¤
āĻ
āĻŦāĻļā§āĻ¯āĻ, āĻĒāĻ¯āĻŧāĻāĻ¨āĻŋāĻ example.com āĻā§āĻŦ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¨āĻ¯āĻŧ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻ¸āĻ˛ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ āĻ¤āĻŦā§, āĻ°āĻžāĻāĻāĻžāĻ°āĻā§ upgrade.mikrotik.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 āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻ˛āĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com