From 45f307e3197ddf1a5f90e3d8634a56b4bfd78308 Mon Sep 17 00:00:00 2001 From: Sergey Matveev Date: Mon, 11 Jun 2018 21:36:26 +0300 Subject: [PATCH] =?utf8?q?=D0=97=D0=BE=D0=BE=D0=BF=D0=B0=D1=80=D0=BA=20fir?= =?utf8?q?ewall-=D0=BE=D0=B2=20=D0=B2=20Linux?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://www.opennet.ru/opennews/art.shtml?num=38901 https://www.opennet.ru/opennews/art.shtml?num=48690 Я так давно пользовался iptables, что напрочь забыл (ну и задач не попадалось) что оказывается они только IPv4 пакетов. А ещё есть ip6tabkes, arptables, ebtables. Потом придумали nftables. А теперь вот ещё и bpfilter. У меня даже мысли не возникало после многолетнего использования ipfw (ipf слишком прост и не удовлетворяет даже мои запросы, а PF... появился сильно позже ipfw) что в Linux такой зоопарк. Впрочем так было в нём всегда. Аж страшно вспоминать что я с этим мирился. ifconfig есть. Но для TUN/TAP: tunctl. Для bridge: bridgectl. Для VLAN-ов: какая-то отдельная штука. Для bonding: ifenslave. Linux (именно Linux) это помойка самого разностороннего кода. В *BSD системах всё целостно. *Всё* что касается сетевых интерфейсов делается одной командой ifconfig: VLAN, TUN/TAP, туннели, bridge, bond, IPv4/IPv6 адресация, итд. ipfw firewall: IPv4, IPv6, TCP/UDP/SCTP, ICMP*, Ethernet, traffic shaper/scheduler, NAT, NPTv6, NAT64, IPsec. Stateless и stateful режимы работы. Всё в одном. Честно, PF не трогал -- может там ещё всё гораздо лучше. Но оно в *удобном* одном интерфейсе, а не iptables от которого в дрожь бросает в плане useability. А в *BSD всё что касается статистик и мониторинга в удобных командах знающих всё обо всём: fstat, gstat, ifmcstat, iostat, ipfstat, kldstat, lockstat, netstat, nfsstat, plockstat, pmcstat, procstat, pstat, sockstat, vmstat. Почти все они имеют возможность вывода как в человекочитаемом, так и машиночитаемом виде. У почти всех есть возможность повтора вывода, чтобы делать что-то типа мониторинга. В Linux это были бы сплошь разрозненные утилиты с совершенно непохожим интерфейсом, документацией и возможностями. Аналогично касается конфигурирования: acpiconf, atmconfig, bsdconfig, ifconfig, kldconfig, mdconfig, pciconf, usbconfig. sysctl в *BSD системах делает *очень* многое. В Linux: есть и sysctl и /sys. -- 2.48.1