1. Главная страница » Компьютеры

Internet detection что это

Автор: | 16.12.2019

Буквально несколько дней назад компания Mikrotik анонсировала новостную рассылку №79 (за декабрь 2017). В рамках рассылки было упомянуто обновление RouterOS до версии 6.41.

Честно говоря, лично у меня были большие сомнения, что компания выпустит обновление в преддверии Нового года, т.к. лишняя спешка с такими вещами вовсе ни к чему. Некоторые предыдущие обновления яркий тому пример.

Компания таки решилась выпустить финальную версию обновления RouterOS 6.41. Что же такого интересного в этом обновлении и почему его многие ждут с нетерпением? Попробуем разобраться.

Ранее компания уже пыталась ввести часть изменений, в RC-версиях 6.40, но тогда из-за большого числа проблем и изменений, компании не удалось доработать ПО до стабильного состояния. По этой же причине был откат части функций и перенос в обновление 6.40.

Новый Br >RouterOS версии 6.41 содержит в себе новую реализацию моста (Bridge), которая уже поддерживает аппаратную разгрузку – hw-offload (hardware offload).

При выполнении обновления будет выполнено преобразование всех интерфейсов с «master-port», при этом сама опция master-port упраздняется как таковая. Ниже на скриншоте пример того, как конвертируются интерфейсы.

Обратите внимание! В случае понижения версии или отката (downgrade), это не приведет к восстановлению прежней конфигурации с master-port, вместо этого вам потребуется восстановить конфигурацию вручную либо при помощи бэкапа.

Читайте также:  Http wiki cyanogenmod org w devices

Для сохранения копии старой конфигурации бриджа, можно воспользоваться командой:

После чего в консоль будет выведен список команд для восстановления конфигурации, не забудьте их сохранить. Можно и сразу сохранить в rsc-файл, например так:

После этого можно приступить к обновлению. Новый мост реализует обработку Layer2 и при соблюдении определенных условий будет автоматически включать hw-offload (если это возможно). Прочая конфигурация Switch не затрагивается и остается без изменений.

Для просмотра статуса портов достаточно воспользоваться командой:

Важные изменения в RouterOS v6.41

Пришло время ознакомиться с полным списком изменений, который включает очень много интересных изменений и не ограничивается одними только бриджами.

  • Новые программные бриджи, совместимые с VLAN (документация);
  • "master-port" конвертированы в новую конфигурацию с аппаратным offload (документация);
  • Добавлена возможность проверки Интернета (/interface detect-internet) – detnet. Функция классифицирует интерфейсы по типу: Internet, WAN, LAN, unknown и no-link. Во время инициализации, все интерфейсы Layer2 получают статус LAN, для получения статуса WAN, интерфейс L2 должен получать параметры от стороннего DHCP-сервера и обеспечивать активный маршрут к 8.8.8.8 (Google DNS). Интерфейсы с туннелями Layer3 а также интерфейсы LTE-модемов во время инициализации автоматически получают статус WAN. Статус WAN может измениться обратно в LAN только при изменении статуса линка. LAN-интерфейсы блокируются как LAN на 1 час, далее изменение классификации возможно при изменении статуса линка (официальная документация).
  • Реализация моста с hw-offload (введено начиная с v6.40rc36);
  • Система нумерации версий RouterBOOT приведена в соответствие с нумерацией версий RouterOS;
  • Для wAP 60G добавлена поддержка режима PtMP (Point to Multipoint). Пересмотрены режимы "master" и "slave", сейчас это "br >Начиная с обновления RouterOS 6.41 разработчики добавили функцию detect-internet, которая позволяет определять статус интерфейсов.

Для чего можно использовать данную функцию? Например, при создании конфигураций с Failover, т.е. когда у маршрутизатора Mikrotik имеется несколько подключений к сети интернет и при этом есть необходимость автоматического переключения между каналами в случае отказа.

На текущий момент функция доступна как из командной строки и при написании скриптов, так и через интерфейс Winbox. Вместе с этим, разработчики представили нам небольшую документацию. Попробуем разобраться, что к чему.

Официальная документация по detect-internet

Detect Internet (Обнаружение интернета) – инструмент, который классифицирует контролируемые интерфейсы по следующим типам:

Статус LAN (Local Area Network, локальная сеть) присваивается интерфейсам локальной сети, все интерфейсы Layer 2 изначально получают данный статус.

Интерфейсы с этим статусом блокируются на 1 час и в дальнейшем могут изменить свой статус только при изменении статуса соединения (link state).

Статус WAN (Wide Area Network, глобальная сеть) изначально присваивается всем туннелям Layer 3 и интерфейсам LTE-модемов.

Интерфейсы второго уровня (L2) также могут получить статус WAN, для этого необходимо выполнение двух условий:

  • интерфейс имеет активный маршрут до IP 8.8.8.8 (сервис Google DNS);
  • интерфейс может или уже получил сетевой адрес и параметры сети от DHCP-сервера (не применимо в том случае, если на интерфейсе DHCP-сервер работает Detect Internet).

Интерфейс со статусом «WAN» может вернуться в состояние «LAN» при изменении состояния (link state).

Статус Internet присваивается интерфейсам, ранее получившим статус WAN, при соблюдении дополнительного условия: WAN-интерфейс должен обеспечивать доступ к облаку Mikrotik (cloud.mikrotik.com), используя протокол UDP и порт 30000.

Обратите внимание, в отличие от WAN, статус Internet проверяется с интервалом в 1 минуту, если же облако будет недоступным более 3 минут, интерфейс утратит статус «Internet» и сменит его на «WAN».

Как использовать detect-internet?

Конфигурирование настроек производится в соответствующем подменю

Для того, чтобы просмотреть список доступных опций, выполните команду:

По-умолчанию, detect-internet имеет следующие настройки:

Более подробно рассмотрим каждый из них.

detect-interface-list – все интерфейсы в данном списке будут отслеживаться с помощью инструмента Detect Internet.

internet-interface-list – список, в который автоматически добавляются все интерфейсы со статусом Internet.

lan-interface-list и wan-interface-list – списки, в которые по аналогии автоматически добавляются интерфейсы со статусами LAN и WAN соответственно.

Из всего этого нас интересует первая опция. Для того, чтобы активировать инструмент Detect Internet, выполняем команду:

Данной командой мы активируем проверку статусов на всех интерфейсах маршрутизатора.
Чтобы проверить статус портов, воспользуемся командой:

Команда выводит таблицу интерфейсов со следующими параметрами:

    • name – имя интерфейса;
    • state – статус;
    • state-change-time – дата и время последнего изменения статуса;
    • cloud-rtt – пинг до облачного сервиса cloud.mikrotik.com;

    Надеемся, Mikrotik будет дорабатывать данную функцию и в скором времени, возможно, мы получим удобный инструмент, частично заменяющий скрипты.

    Было бы не плохо увидеть полноценную реализацию функционала в Winbox: возможность задания интервала проверки, своих IP для проверки (а не только Google DNS и Mikrotik Cloud), а также обработчик событий (выполнение скриптов, отправка уведомлений и так далее).

    P.S. Выше приведена инструкция по работе с интрументом через командную строку, при желании, можете воспользоваться интерфейсом Winbox.

    Прочие изменения

    arp — fixed invalid static ARP entries after reboot on interfaces without IP address;

    bgp — added 32-bit private ASN support;

    bridge — added comment support for VLANs;

    bridge — added support for "/interface list" as a bridge port;

    bridge — automatically turn off "fast-forward" feature if both bridge ports have "H" flag;

    bridge — changed "Host" and "MDB" table column order;

    bridge — disable "hw-offload" when "horizon" or "external-fdb" is set;

    bridge — fixed "fast-forward" counters;

    bridge — fixed ARP setting (introduced in v6.40rc36);

    bridge — fixed connectivity issues when there are multiple VLAN interfaces on bridge;

    bridge — fixed hw-offloaded IGMP Snooping service getting stopped;

    bridge — fixed multicast forwarding (introduced in v6.40rc36);

    bridge — implemented dynamic entries for active MST port overrides;

    bridge — implemented software based "igmp-snooping";

    bridge — removed "frame-types" and "ingress-filtering" for bridge interfaces (introduced in v6.40rc36);

    bridge — show bridge interface local addresses in the host table;

    btest — improved reliability on Bandwidth Test when device`s RAM is almost full;

    capsman — added "vlan-mode=no-tag" option;

    capsman — added possibility to downgrade CAP with Upgrade command from CAPsMAN;

    capsman — return complete CA chain when issuing new certificate;

    capsman — use "adaptive-noise-immunity" value from CAP local configuration;

    certificate — added option to store CRL in RAM (CLI only);

    certificate — fixed SCEP "get" request URL encoding;

    certificate — improved CRL update after system startup;

    certificate — show "Expired" flag when initial CRL fetch fails;

    certificate — show invalid flag when local CRL file does not exist;

    chr — added KVM memory balloon support;

    chr — added suspend support;

    console — do not stop "/certificate sign" process if console times out in 1 minute;

    console — removed "/setup";

    crs317 — fixed reliability on FAN controller;

    crs326 — fixed packet processing speed on switch chip if individual port link speed differs;

    crs326 — improved transmit performance from SFP+ to Ethernet ports;

    crs3xx — added ingress/egress rate input limits;

    crs3xx — hide unused switch "vlan-mode", "vlan-header-mode" and "default-vlan-id" options;

    crs3xx — switch VLAN configuration integrated within bridge VLAN configuration with hw-offload;

    dhcp — fixed DHCP services failing after reboot when DHCP option was used;

    dhcp — fixed unresponsive DHCP service caused by inability to read not set RAW options;

    dhcp — require DHCP option name to be unique;

    dhcp-client — limit and enforce DHCP client "default-route-distance" minimal value to 1;

    dhcp-server — added "option-set" argument (CLI only);

    dhcp-server — added basic RADIUS accounting;

    dhcpv4-client — add dynamic DHCP client for mobile clients which require it;

    dhcpv4-client — allow to use DUID for client as identity string as the option 61;

    dhcpv4-server — added "NETWORK_GATEWAY" option variable;

    dhcpv4-server — strip trailing "" in "hostname" if present;

    discovery — use "/interface list" instead of interface name under neighbor discovery settings;

    e-mail — do not show errors when sending e-mail from script;

    eoip — made L2MTU parameter read-only;

    ethernet — removed "master-port" parameter;

    export — fixed interface list export;

    fetch — accept all HTTP 2xx status codes;

    filesystem — implemented additional system integrity checks on reboots;

    firewall — added "tls-host" firewall matcher;

    health — fixed bogus voltage readings on CCR1009;

    hotspot — fixed "dst-port" to require valid "protocol" in "walled-garden ip";

    hotspot — fixed Walled Garden IP functionality when address-list is used;

    ike1 — DPD retry interval set to 5 seconds;

    ike1 — disallow peer creation using base mode;

    ike1 — fixed crash on xauth if user does not exist;

    ike1 — fixed memory corruption when IPv6 is used;

    ike1 — improved stability on phase1 rekeying;

    ike1 — release mismatched PH2 peer IDs;

    ike1 — use /32 netmask if none provided by mode config;

    ike2 — added support for multiple split networks;

    ike2 — check identities on "initial-contact";

    ike2 — do not allow to configure nat-traversal;

    ike2 — fixed PH1 lifetime reset on boot;

    ike2 — fixed initiator DDoS cookie processing;

    ike2 — fixed responder DDoS cookie first notify type check;

    ike2 — kill connection when peer changes address;

    ike2 — use peer configuration address when available on empty TSi;

    interface — added "/interface reset-counters" command (CLI only);

    interface — added default "/interface list" "dynamic" which contains dynamic interfaces;

    interface — added option to join and exclude "/interface list" from one and another;

    interface — fixed corrupted "/interface list" configuration after upgrade;

    ippool6 — try to assign desired prefix for client if prefix is not being already used;

    ipsec — added DH groups 19, 20 and 21 support for phase1 and phase2;

    ipsec — allow to specify "remote-peer" address as DNS name;

    ipsec — fixed incorrect esp proposal key size usage;

    ipsec — fixed policy enable/disable;

    ipsec — improved reliability on certificate usage;

    ipsec — renamed "firewall" argument to "notrack-chain" in peer configuration;

    ipsec — skip invalid policies for phase2;

    ipv6 — add dynamic "/ip dns" server address from RA when RA is permitted by configuration;

    l2tp — improved reliability on packet processing in FastPath;

    l2tp-server — fixed PPP services becoming unresponsive after changes on L2TP server with IPSec configuration;

    lcd — fixed "flip-screen=yes" state after reboot;

    log — added "bridge" topic;

    log — fixed interface name in log messages;

    log — optimized "poe-out" logging topic logs;

    lte — added "/interface lte apn" menu (Passthrough requires reconfiguration);

    lte — added Yota non-configurable modem support;

    lte — added support for ZTE ME3630 E1C with additional "/port" for GPS usage;

    lte — fixed Passthrough support;

    lte — fixed authentication for non LTE modes;

    lte — fixed error when trying to add APN profile without name;

    lte — fixed rare crash when initializing LTE modem after reset;

    lte — fixed user authentication for R11e-LTE when new firmware is used;

    lte — integrated IP address acquisition without DHCP client for wAP LTE kit-US;

    lte — limited minimal default route distance to 1;

    lte — update info command with "location area code" and "physical cell id" values;

    m11g — improved ethernet performance on high load;

    mac-server — use "/interface list" instead of interface name under MAC server settings;

    modem — added initial support for Alcatel IK40 and Olicard 500;

    neighbor — show neighbors on actual bridge port instead of bridge itself

    netinstall — fixed missing "/flash/etc" on first bootup;

    netinstall — fixed missing default configuration prompt on first startup after reset/netinstall;

    ospf — fixed OSPF v2 and v3 neighbor election;

    ovpn-server — do not periodically change automatically generated server MAC address;

    poe — added new "poe-out" status "controller-error";

    poe — fixed false positive excessive logs in auto-on mode when connected to 100 Mbps device powered from another power source;

    poe — log PoE status related messages under debug topic;

    ppp — added initial support for PLE902;

    ppp — added support for Sierra MC7750, Verizon USB730L;

    ppp — do not disconnect PPP connection after "idle-timeout" even if traffic is being processed;

    ppp — fixed "change-mss" functionality when MSS option is missing on forwrded packets;

    ppp — fixed L2TP and PPTP encryption negotiation process on configuration changes;

    ppp — fixed situation when part of PPP configuration was reset to default values after reboot;

    pppoe-client — properly re-establish MLPPP session when one of the lines stopped transmitting packets;

    pppoe-server — fixed situation when PPPoE servers become invalid on reboot;

    quickset — added support for "/interface list" in firewall, neighbor discovery, MAC-Telnet and MAC-Winbox;

    quickset — fixed LTE quickset mode APN field;

    quickset — fixed situation when Quickset automatically changes mode to CPE;

    quickset — renamed router IP static DNS name to "router.lan";

    radius — limited RADIUS timeout maximum value to 3 seconds;

    route — fixed potential route crash on routing table update;

    scheduler — properly display long scheduler configuration;

    sfp — fixed SFP interface power monitor when bad SFP DDMI information is received;

    sftp — added functionality which imports ".auto.rsc" file or reboots router on ".auto.npk" upload;

    sms — fixed minor problem for SMS delivery;

    sms — log decoded USSD responses;

    snmp — fixed "ifHighSpeed" value of VLAN, VRRP and Bonding interfaces;

    snmp — fixed bridge host requests on devices with multiple bridge interfaces;

    snmp — fixed bulk requests when non-repeaters are used;

    snmp — fixed consecutive OID bulk get from the same table;

    snmp — show only available OIDs under "/system health print oid";

    ssh — do not use DH group1 with strong-crypto enabled;

    ssh — enforced 2048bit DH group on tile and x86 architectures;

    system — show USB topology for the device info;

    tile — improved hardware encryption processes;

    tr069-client — fixed "/interface lte apn" configuration parameters;

    traceroute — improved "/tool traceroute" results processing;

    upnp — add "src-address" parameter on NAT rule if it is specified on UPnP request;

    upnp — deny UPnP request if port is already used by the router;

    ups — fixed duplicate "failed" UPS logs;

    userman — allow to generate more than 999 users;

    w60g — added "put-slaves-in-bridge" and "isolate-slaves" options to manage connected clients;

    w60g — connected stations are treated as separate interfaces;

    webfig — added favicon file;

    webfig — fixed router getting reset to default configuration;

    webfig — fixed terminal graphic user interface under Safari browser;

    winbox — added "W60G station" tab in Wireless menu;

    winbox — added "notrack-chain" setting to IPSec peers;

    winbox — added support for "_" symbol in terminal window;

    winbox — added switch menu on RB1100AHx4;

    winbox — do not show MetaROUTER stuff on RB1100AHx4;

    winbox — do not show duplicate "Switch" menus for CRS326;

    winbox — do not show duplicate "Template" parameters for filter in IPSec policy list;

    winbox — do not show duplicate filter parameters "Published" in ARP list;

    winbox — do not show unnecessary tabs from "Switch" menu;

    winbox — fixed "/certificate sign" process;

    winbox — fixed bridge port sorting order by interface name;

    winbox — show warnings under "/system routerboard settings" menu;

    wireless — added "allow-signal-out-off-range" option for Access List entries;

    wireless — added "indonesia3" regulatory domain information;

    wireless — added passive scan option for wireless scan mode;

    wireless — added support for CHARGEABLE_USER_ID in EAP Accounting;

    wireless — check APs against connect-list rules starting with strongest signal;

    wireless — do not show background scan frequencies in the monitor command channel field;

    wireless — improved reliability on "rx-rate" selection process;

    wireless — increased the EAP message retransmit count;

    wireless — log "signal-strength" when successfully connected to AP;

    wireless — pass interface MAC address in Sniffer TZSP frames;

    wireless — updated "UK 5.8 Fixed" and "Australia" country data;

    wireless — updated "united kingdom" regulatory domain information;

    Начиная с обновления RouterOS 6.41 разработчики добавили функцию detect-internet, которая позволяет определять статус интерфейсов.

    Для чего можно использовать данную функцию? Например, при создании конфигураций с Failover, т.е. когда у маршрутизатора Mikrotik имеется несколько подключений к сети интернет и при этом есть необходимость автоматического переключения между каналами в случае отказа.

    На текущий момент функция доступна как из командной строки и при написании скриптов, так и через интерфейс Winbox. Вместе с этим, разработчики представили нам небольшую документацию. Попробуем разобраться, что к чему.

    Официальная документация по detect-internet

    Detect Internet (Обнаружение интернета) – инструмент, который классифицирует контролируемые интерфейсы по следующим типам:

    Статус LAN (Local Area Network, локальная сеть) присваивается интерфейсам локальной сети, все интерфейсы Layer 2 изначально получают данный статус.

    Интерфейсы с этим статусом блокируются на 1 час и в дальнейшем могут изменить свой статус только при изменении статуса соединения (link state).

    Статус WAN (Wide Area Network, глобальная сеть) изначально присваивается всем туннелям Layer 3 и интерфейсам LTE-модемов.

    Интерфейсы второго уровня (L2) также могут получить статус WAN, для этого необходимо выполнение двух условий:

    • интерфейс имеет активный маршрут до IP 8.8.8.8 (сервис Google DNS);
    • интерфейс может или уже получил сетевой адрес и параметры сети от DHCP-сервера (не применимо в том случае, если на интерфейсе DHCP-сервер работает Detect Internet).

    Интерфейс со статусом «WAN» может вернуться в состояние «LAN» при изменении состояния (link state).

    Статус Internet присваивается интерфейсам, ранее получившим статус WAN, при соблюдении дополнительного условия: WAN-интерфейс должен обеспечивать доступ к облаку Mikrotik (cloud.mikrotik.com), используя протокол UDP и порт 30000.

    Обратите внимание, в отличие от WAN, статус Internet проверяется с интервалом в 1 минуту, если же облако будет недоступным более 3 минут, интерфейс утратит статус «Internet» и сменит его на «WAN».

    Как использовать detect-internet?

    Конфигурирование настроек производится в соответствующем подменю

    Для того, чтобы просмотреть список доступных опций, выполните команду:

    По-умолчанию, detect-internet имеет следующие настройки:

    Более подробно рассмотрим каждый из них.

    detectinterfacelist – все интерфейсы в данном списке будут отслеживаться с помощью инструмента Detect Internet.

    internet-interface-list – список, в который автоматически добавляются все интерфейсы со статусом Internet.

    laninterfacelist и waninterfacelist – списки, в которые по аналогии автоматически добавляются интерфейсы со статусами LAN и WAN соответственно.

    Из всего этого нас интересует первая опция. Для того, чтобы активировать инструмент Detect Internet, выполняем команду:

    Данной командой мы активируем проверку статусов на всех интерфейсах маршрутизатора.

    Чтобы проверить статус портов, воспользуемся командой:

    Команда выводит таблицу интерфейсов со следующими параметрами:

    • name – имя интерфейса;
    • state – статус;
    • state-change-time – дата и время последнего изменения статуса;
    • cloud-rtt – пинг до облачного сервиса cloud.mikrotik.com;

    Надеемся, Mikrotik будет дорабатывать данную функцию и в скором времени, возможно, мы получим удобный инструмент, частично заменяющий скрипты.

    Было бы не плохо увидеть полноценную реализацию функционала в Winbox: возможность задания интервала проверки, своих IP для проверки (а не только Google DNS и Mikrotik Cloud), а также обработчик событий (выполнение скриптов, отправка уведомлений и так далее).

    P.S. Выше приведена инструкция по работе с интрументом через командную строку, при желании, можете воспользоваться интерфейсом Winbox.

    Видеокурс «Настройка оборудования MikroTik» (аналог MTCNA)

    Учитесь работать с MikroTik? Рекомендую видеокурс «Настройка оборудования MikroTik». В курсе разобраны все темы из официальной учебной программы MTCNA и много дополнительного материала. Курс сочетает теоретическую часть и практику – настройку маршрутизатора по техническому заданию. Консультации по заданиям курса ведет его автор Дмитрий Скоромнов. Подойдет и для первого знакомства с оборудованием MikroTik, и для систематизации знаний опытным специалистам.

    Списки интерфейсов появились в MikroTik RouterOS довольно давно, но по наблюдением далеко не все про них знают и поэтому не используют.

    Описание

    Что это такое понятно из названия — Interfaces List, такие же как списки адресов(address list), только с интерфейсами. Не стоит путать из с мостами(bridge) и связанными(bounding) интерфейсами, это три разные технологии под разные задачи. Появился этот функционал около года назад и присутствует во всех актуальных(current и bugfix) релизах RouterOS 6.

    Главное что стоит запомнить: Интерфейсы в составе списков продолжают быть независимыми, трафик не начнет ходить между ними насквозь(как в случае с bridge) и не будет распаралелен(как в случае с bounding), вот вам смешно, а ведь бывают умники.

    Стандартные списки

    [Interfaces]->[Interfaces List]->[Lists]
    по умолчанию присутствуют три списка: all, none, dynamic. С первыми двумя все понятно, dynamic на данный момент заполняется из определенных ppp подключений и Detect Internet.

    Создание своего списка
    [Interfaces]->[Interfaces List]->[Lists]->[+]
    name — имя
    include — включить в новый список интерфейсы из указанного списка
    exclude — исключить из нового списка интерфейсы из указанного списка

    Есть следующие интерфейсы для выхода в интернет:
    ether1-wan(real ip)
    ether2-wan(real ip)
    l2tp-vpn1(gray ip)
    l2tp-vpn2(gray ip)

    С первых двух, ожидаем входящие соединения из вне, со вторых если они и будут, то нас не интересуют.

    Интерфейсы ether1-wan и ether2-wan объединены в список wan. Зеленые линии.

    Интерфейсы l2tp-vpn1 и l2tp-vpn2 объединены в список vpn. Красные линии.

    Список inet содержит(include) в себе wan и vpn. Черные линии.

    Теперь в firewall можно разделить входящий(и проходящий со стороны wan/vpn) трафик с wan и vpn и написать отдельные правила, а исходящий(и проходящий в сторону wan/vpn) фильтровать вместе(там скорее всего будет банальный established, new) через inet.

    Пример топорный, но другого у меня нет.

    Добавление интерфейсов

    Добавлять можно любые интерфейсы: ethernet, wlan, bridge, vlan, vpn, vif,… Все делается из основного меню [Interface Lists].

    Использование в firewall filter

    Основное применение — упростить правила firewall, допустим у вас есть vpn концентратор и необходимо хитро настроить правила для проходящего трафика, но сделать это максимально наглядно.

    Проверяем in-interface, отправляем в цепочку-1.
    В цепочке-1 проверяем out-interface, отправляем в цепочку-2.
    В цепочке-2 настраиваем правила.

    И так для каждого интерфейса. 4 подключения — 8 правил, 8 подключений — 16 правил. Подключения динамические? Можно выкрутиться и использовать all ppp, перекинуть в цепочку-1, а потом из цепочки-1 return’ить лишние интерфейсы.

    Добавляем все интерфейсы в один список и создаем одно правило с одинаковыми in-interface-list и out-interface-list, которое переносит в цепочки с правилами фильтрации. Стало заметно короче.

    В этой схеме есть и минус, если посмотреть на «раньше» то для каждого интерфейса прописаны подсети адресов которые ожидаются на интерфейсе, в новой схеме можно все интерфейсы загнать в address list, но адреса подсетей уже не будут четко привязаны к интерфейсам.

    Другой пример — у вас несколько провайдеров и лень для каждого дублировать правила:

    Использование в firewall nat

    Когда списки интерфейсов только появились, на форуме mikrotik жаловались на работу interface lists в nat, сейчас вроде починили. Решил поисследовать


    На схеме не хватает адресов для same

    Chain src-nat:
    * masquerade — работает. В зависимости от выходного интерфейса подставляет соответствующий ip.
    * src-nat — работает. Подставляет указанный ip только для интерфейса на котором этот ip присутствует.
    * same — работает. Аналогично с src-nat.

    * redirect — работает.
    * dst-nat — работает. В том числе в сочетании с masquerade.
    * netmap — работает. Если вы его используете вместо dst-nat. При использовании по назначению тоже работает.

    Использование в firewall mangle

    Работает. Например если вам нужно пометить весь входящий трафик с интерфейсов для queue tree.

    Использование в vpn profiles

    Вспоминаем пример с региональными vpn. Добавился пятый регион и вы добавляете его руками в interface list, а можно поступить проще и в профиле vpn указать в какой список будет помещен интерфейс при подключении, в независимости от того есть для него binding или он создается автоматически, когда клиент отключается интерфейс из списка будет удален. Для исходящих vpn это тоже работает.

    Все хорошо, но присутствует баг(на момент публикации версия RoS 6.42.6). Если вы создали binding и статически добавили его в список указанный в profiles, то подключение не установится. В логах(сервера) будет примерно следующее:

    Использование в bridge

    Можно указать список интерфейсов в качестве участника bridge, но будут добавлены только интерфейсы способные работать на Layer 2(ethernet, wlan, bounding, eoip, ovpn-ethernet, . ) исключение — другие bridge.

    Detect Internet

    Функционал появился в current версии прошивки и пока не готов к использованию.
    [Interfaces]->[Detect Intrnet]
    * Detect Interface List — список с интерфейсами на которых будут производиться проверки.
    * LAN Interface List — список, в который добавляются все активный layer2 интерфейсы. Получают статус lan.
    * WAN Interface List — список, в который добавляются все интерфейсы lte и vpn туннели. Так-же интерфесы со статусом lan у которых нет dhcp server и с которых доступен адрес 8.8.8.8. В дополнение ко всему mikrotik добавит на интерфейс dhcp client в попытках получить настройки автоматически.
    * Internet Interface List — список, в который попадают интерфесы со статусом wan, если с них доступен cloud.mikrotik.com:30000. Перепроверка каждую минуту, после 3 неудачных попыток интерфейс возвращается в статус wan. Изменить адрес проверки, либо интервалы нельзя.

    [Interface Statuses] — результаты проверок.

    Так оно должно работать, но на практике запросы на cloud.mikrotik.com не отправляются. Ждем и надеемся, что: починят; снимут ограничения; добавят возможность выполнять скрипты при смене состояния интерфейса.

    Прочее

    В current ветке MikroTik решили, что стоит использовать Interface List активнее и теперь следующие опции конфигурируются через списки интерфейсов, вместо конкретных интерфейсов:
    * [IP]->[Neighbors]->[Discovery Settings]

    * [Tools]->[MAC-Server]->[Mac-Telnet Server]&[Mac-Winbox Server]

    После обновления не забывайте перенастроить.

    Скрипты и cli

    Вы можете столкнуться с ситуацией, когда один из интерфейсов в списке станет unknown(если удалите интерфейс до удаления из списка) и лично у меня так и не удалось найти способа простого(без зачистки всего списка и перезаполнения) удаления такого интерфейса средствами cli и скриптов. Если кто знает — пишите в комментарии.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *