krolikofff Posted November 23, 2018 Posted November 23, 2018 Всем привет Не проходят пинги на хосты в локальной сети. По IP пингуются, по имени никак. Причём хосты в Интернете пинги проходят, а в локальной сети нет. Машины в локальной сети пингуют друг друга по именам успешно. Из консоли микротик пинговать хосты не хочет. [admin@gtw] > ping userpc invalid value for argument address: invalid value of mac-address, mac address required invalid value for argument ipv6-address while resolving ip-address: name does not exist Может с маршрутами что-то не то, но там всё без наворотов > ip route print Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, B - blackhole, U - unreachable, P - prohibit # DST-ADDRESS PREF-SRC GATEWAY DISTANCE 0 A S 0.0.0.0/0 99.222.55.33 1 1 ADC 99.222.55.33/28 99.222.55.33 ether9_wan 0 2 ADC 192.168.1.0/24 192.168.1.1 bridge-local 0 Интерфейсов всего 2 задействовано + бридж. > interface print Flags: D - dynamic, X - disabled, R - running, S - slave # NAME TYPE ACTUAL-MTU L2MTU MAX-L2MTU 0 ether1 ether 1500 1598 4074 1 RS ether2_lan ether 1500 1598 4074 2 S ether3 ether 1500 1598 4074 3 S ether4 ether 1500 1598 4074 4 S ether5 ether 1500 1598 4074 5 ether6 ether 1500 1598 2028 6 ether7 ether 1500 1598 2028 7 ether8 ether 1500 1598 2028 8 R ether9_wan ether 1500 1598 2028 9 ether10 ether 1500 1598 2028 10 X sfp1 ether 1500 1598 4074 11 S wlan1 wlan 1500 1600 2290 12 R bridge-local bridge 1500 1598 Может кто-нибудь подсказать, куда смотреть? Правила отключал, не помогает. Вставить ник Quote
McSea Posted November 23, 2018 Posted November 23, 2018 1 hour ago, krolikofff said: Из консоли микротик пинговать хосты не хочет. А должен ? Ваш DNS сервер эти имена знает ? Вставить ник Quote
krolikofff Posted November 23, 2018 Author Posted November 23, 2018 (edited) А как проверить? В кеше этих хостов нет, вернее они есть, но у них type: unknown, data 0.0.0.0 > ip dns print servers: 88.99.133.11,88.99.133.12,8.8.8.8 dynamic-servers: allow-remote-requests: yes max-udp-packet-size: 4096 query-server-timeout: 2s query-total-timeout: 10s max-concurrent-queries: 100 max-concurrent-tcp-sessions: 20 cache-size: 2048KiB cache-max-ttl: 1w cache-used: 31KiB Edited November 23, 2018 by krolikofff Вставить ник Quote
McSea Posted November 23, 2018 Posted November 23, 2018 (edited) 1 hour ago, krolikofff said: А как проверить? Можно применить метод дедукции. Начинаем с последнего DNS сервера, указанного у вас настройках - 8.8.8.8. Может он знать адреса хостов в вашей локальной сети ? Думаю вряд ли. Далее продолжаем со следующими DNS серверами из списка. Edited November 23, 2018 by McSea Вставить ник Quote
krolikofff Posted November 24, 2018 Author Posted November 24, 2018 То, что эти адреса к локальной сети отношения не имеют, я и так понимаю. Mikrotik сам в роли DNS сервера. Что же, всю локалку статикой вбивать? Вставить ник Quote
McSea Posted November 24, 2018 Posted November 24, 2018 (edited) 3 hours ago, krolikofff said: Что же, всю локалку статикой вбивать? Если AD с DNS нет и вы хотите сам микротик как DNS сервер использовать, то нужно адреса прописать, сами они там не появятся. Если все получают по DHCP адреса на том же микротике, можно это дело автоматизировать DHCP скриптом. Edited November 24, 2018 by McSea Вставить ник Quote
krolikofff Posted November 24, 2018 Author Posted November 24, 2018 1 час назад, McSea сказал: Если AD с DNS нет и вы хотите сам микротик как DNS сервер использовать, то нужно адреса прописать, сами они там не появятся. Если все получают по DHCP адреса на том же микротике, можно это дело автоматизировать DHCP скриптом. Спасибо огромное! Нашёл пример скрипта. Проблема и правда просто решилась, а вот те хосты, кто на статике, придётся ручками вбить, благо их не много. :local ttl; :set ttl "00:14:29"; :local hostname; :local hostip; :local free; /ip dns static; :foreach a in=[find] do={ :if ([get $a ttl] = $ttl) do={ :put ("Removing: " . [get $a name] . " : " . [get $a address]); remove $a; } } /ip dhcp-server lease ; :foreach i in=[find] do={ /ip dhcp-server lease ; :if ([:len [get $i host-name]] > 0) do={ :set free "true"; :set hostname ([get $i host-name]); :set hostip [get $i address]; /ip dns static ; :foreach di in [find] do={ :if ([get $di name] = $hostname) do={ :set free "false"; :put ("Not adding already existing entry: " . $hostname); } } :if ($free = true) do={ :put ("Adding: " . $hostname . " : " . $hostip ) ; /ip dns static add name=$hostname address=$hostip ttl=$ttl; } } } Вставить ник Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.