Ошибка замечена в firewall-advanced (alterator-firewall-0.2-alt6-M40.1) Строка match функции iptables_list_ifaces в некоторых случаях некорректно получает список сетевых интерфейсов доступных в системе. конкретнее - интерфейс может иметь индекс более 9, что не обрабатывается соответствующим шаблоном regexp - /^[[:digit:]]:+[[:space:]] ------------------------------------------------------------ вот вывод ip addr show у меня: [root@ns-1 filter]# ip addr show 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:09:6b:7f:df:35 brd ff:ff:ff:ff:ff:ff inet 192.168.1.1/24 brd 192.168.1.255 scope global eth0 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast qlen 1000 link/ether 00:19:cb:80:be:b6 brd ff:ff:ff:ff:ff:ff inet 192.168.0.10/24 brd 192.168.0.255 scope global eth1 17: ppp0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1476 qdisc pfifo_fast qlen 3 link/ppp inet 88.87.89.147 peer 88.87.65.91/32 scope global ppp0 --------------------------------------------------------------- В данной ситуации в интерфейсе alterator не присутствует интерфейс ppp0 и строка ppp+, т.к. "17:" проходит мимо "/^[[:digit:]]:" --------------------------------------------------------------- function iptables_list_ifaces( cmd, error, line, list, iface, idx, i, n) { i = 1 cmd = IP " addr show" while ((error = cmd | getline line) > 0) { if (match(line, /^[[:digit:]]:+[[:space:]]+([^[:space:]]+):/, list) > 0) { <...skipped...> =================================================================