Перейти к содержимому
Калькуляторы

gentoo Не создаются правила iptables с ipset 6.6

Доброго времени суток!

 

Есть проблема связки iptables и ipset. При добавлении правил в iptables, использующего ipset выдаётся следующее информативное сообщение iptables: No chain/target/match by that name.

Конкретно. Создаю список в ipset

# ipset -N tst hash:ip
# ipset -A tst 192.168.10.10
# ipset -L tst
Name: tst
Type: hash:ip
Header: family inet hashsize 1024 maxelem 65536 
Size in memory: 16496
References: 0
Members:
192.168.10.10

Пытаюсь добавить правило в iptables.

# iptables -A INPUT -m set --match-set tst src -j LOG --log-prefix "IPSET rule"
iptables: No chain/target/match by that name.

Или просто ACCEPT

# iptables -A INPUT -m set --match-set tst src -j ACCEPT
iptables: No chain/target/match by that name.

# iptables --version
iptables v1.4.10

#ipset --version
ipset v6.4, protocol version: 6

Интересует ipset шестой ветки. Пробовал 6.4, 6.6 результат одинаков

 

lsmod | grep ip
ip_set_hash_ip         14328  1 
ip_set_hash_net        17032  1 
ip_set                 16452  2 ip_set_hash_ip,ip_set_hash_net
nfnetlink               1912  1 ip_set
ipt_addrtype            1448  0 
xt_iprange              1304  0 
xt_multiport            1288  0 
ipv6                  193208  44 
iptable_nat             2728  0 
nf_nat                 11148  1 iptable_nat
ipt_REJECT              1800  1 
ipt_LOG                 6016  4 
nf_conntrack_ipv4       7728  8 iptable_nat,nf_nat
nf_defrag_ipv4           920  1 nf_conntrack_ipv4
nf_conntrack           41640  6 xt_conntrack,xt_connmark,iptable_nat,nf_nat,nf_conntrack_ipv4,xt_state
iptable_filter           920  1 
iptable_mangle          1000  0 
ip_tables              12664  3 iptable_nat,iptable_filter,iptable_mangle
x_tables               11360  21 ipt_addrtype,xt_NFQUEUE,xt_string,xt_hashlimit,xt_iprange,xt_dscp,xt_conntrack,xt_owner,xt_mark,xt_multiport,xt_connmark,xt_DSCP,iptable_nat,ipt_REJECT,xt_tcpudp,ipt_LOG,xt_limit,xt_state,iptable_filter,iptable_mangle,ip_tables

 

Версия ядра 2.6.38-gentoo-r6 x86_64, собрано genkernel. Конфиг ->

zegrep '_NF_|NETFILTER' /proc/config.gz | grep -v '^#'
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y
CONFIG_BRIDGE_NETFILTER=y
CONFIG_NETFILTER_NETLINK=m
CONFIG_NETFILTER_NETLINK_QUEUE=m
CONFIG_NETFILTER_NETLINK_LOG=m
CONFIG_NF_CONNTRACK=m
CONFIG_NF_CONNTRACK_MARK=y
CONFIG_NF_CONNTRACK_SECMARK=y
CONFIG_NF_CONNTRACK_EVENTS=y
CONFIG_NF_CT_PROTO_GRE=m
CONFIG_NF_CT_PROTO_SCTP=m
CONFIG_NF_CT_PROTO_UDPLITE=m
CONFIG_NF_CONNTRACK_AMANDA=m
CONFIG_NF_CONNTRACK_FTP=m
CONFIG_NF_CONNTRACK_H323=m
CONFIG_NF_CONNTRACK_IRC=m
CONFIG_NF_CONNTRACK_NETBIOS_NS=m
CONFIG_NF_CONNTRACK_PPTP=m
CONFIG_NF_CONNTRACK_SANE=m
CONFIG_NF_CONNTRACK_SIP=m
CONFIG_NF_CONNTRACK_TFTP=m
CONFIG_NF_CT_NETLINK=m
CONFIG_NETFILTER_XTABLES=m
CONFIG_NETFILTER_XT_MARK=m
CONFIG_NETFILTER_XT_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
CONFIG_NETFILTER_XT_TARGET_CT=m
CONFIG_NETFILTER_XT_TARGET_DSCP=m
CONFIG_NETFILTER_XT_TARGET_HL=m
CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
CONFIG_NETFILTER_XT_TARGET_LED=m
CONFIG_NETFILTER_XT_TARGET_MARK=m
CONFIG_NETFILTER_XT_TARGET_NFLOG=m
CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
CONFIG_NETFILTER_XT_TARGET_RATEEST=m
CONFIG_NETFILTER_XT_TARGET_TEE=m
CONFIG_NETFILTER_XT_TARGET_TRACE=m
CONFIG_NETFILTER_XT_TARGET_SECMARK=m
CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_CLUSTER=m
CONFIG_NETFILTER_XT_MATCH_COMMENT=m
CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
CONFIG_NETFILTER_XT_MATCH_CPU=m
CONFIG_NETFILTER_XT_MATCH_DCCP=m
CONFIG_NETFILTER_XT_MATCH_DSCP=m
CONFIG_NETFILTER_XT_MATCH_ESP=m
CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
CONFIG_NETFILTER_XT_MATCH_HELPER=m
CONFIG_NETFILTER_XT_MATCH_HL=m
CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
CONFIG_NETFILTER_XT_MATCH_IPVS=m
CONFIG_NETFILTER_XT_MATCH_LENGTH=m
CONFIG_NETFILTER_XT_MATCH_LIMIT=m
CONFIG_NETFILTER_XT_MATCH_MAC=m
CONFIG_NETFILTER_XT_MATCH_MARK=m
CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
CONFIG_NETFILTER_XT_MATCH_OSF=m
CONFIG_NETFILTER_XT_MATCH_OWNER=m
CONFIG_NETFILTER_XT_MATCH_POLICY=m
CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
CONFIG_NETFILTER_XT_MATCH_QUOTA=m
CONFIG_NETFILTER_XT_MATCH_RATEEST=m
CONFIG_NETFILTER_XT_MATCH_REALM=m
CONFIG_NETFILTER_XT_MATCH_RECENT=m
CONFIG_NETFILTER_XT_MATCH_SCTP=m
CONFIG_NETFILTER_XT_MATCH_STATE=m
CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
CONFIG_NETFILTER_XT_MATCH_STRING=m
CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_NETFILTER_XT_MATCH_TIME=m
CONFIG_NETFILTER_XT_MATCH_U32=m
CONFIG_NF_DEFRAG_IPV4=m
CONFIG_NF_CONNTRACK_IPV4=m
CONFIG_NF_CONNTRACK_PROC_COMPAT=y
CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_MATCH_ADDRTYPE=m
CONFIG_IP_NF_MATCH_AH=m
CONFIG_IP_NF_MATCH_ECN=m
CONFIG_IP_NF_MATCH_TTL=m
CONFIG_IP_NF_FILTER=m
CONFIG_IP_NF_TARGET_REJECT=m
CONFIG_IP_NF_TARGET_LOG=m
CONFIG_IP_NF_TARGET_ULOG=m
CONFIG_NF_NAT=m
CONFIG_NF_NAT_NEEDED=y
CONFIG_IP_NF_TARGET_MASQUERADE=m
CONFIG_IP_NF_TARGET_NETMAP=m
CONFIG_IP_NF_TARGET_REDIRECT=m
CONFIG_NF_NAT_SNMP_BASIC=m
CONFIG_NF_NAT_PROTO_GRE=m
CONFIG_NF_NAT_PROTO_UDPLITE=m
CONFIG_NF_NAT_PROTO_SCTP=m
CONFIG_NF_NAT_FTP=m
CONFIG_NF_NAT_IRC=m
CONFIG_NF_NAT_TFTP=m
CONFIG_NF_NAT_AMANDA=m
CONFIG_NF_NAT_PPTP=m
CONFIG_NF_NAT_H323=m
CONFIG_NF_NAT_SIP=m
CONFIG_IP_NF_MANGLE=m
CONFIG_IP_NF_TARGET_CLUSTERIP=m
CONFIG_IP_NF_TARGET_ECN=m
CONFIG_IP_NF_TARGET_TTL=m
CONFIG_IP_NF_RAW=m
CONFIG_IP_NF_ARPTABLES=m
CONFIG_IP_NF_ARPFILTER=m
CONFIG_IP_NF_ARP_MANGLE=m
CONFIG_NF_DEFRAG_IPV6=m
CONFIG_NF_CONNTRACK_IPV6=m
CONFIG_IP6_NF_QUEUE=m
CONFIG_IP6_NF_IPTABLES=m
CONFIG_IP6_NF_MATCH_AH=m
CONFIG_IP6_NF_MATCH_EUI64=m
CONFIG_IP6_NF_MATCH_FRAG=m
CONFIG_IP6_NF_MATCH_OPTS=m
CONFIG_IP6_NF_MATCH_HL=m
CONFIG_IP6_NF_MATCH_IPV6HEADER=m
CONFIG_IP6_NF_MATCH_MH=m
CONFIG_IP6_NF_MATCH_RT=m
CONFIG_IP6_NF_TARGET_HL=m
CONFIG_IP6_NF_TARGET_LOG=m
CONFIG_IP6_NF_FILTER=m
CONFIG_IP6_NF_TARGET_REJECT=m
CONFIG_IP6_NF_MANGLE=m
CONFIG_IP6_NF_RAW=m
CONFIG_BRIDGE_NF_EBTABLES=m

ipset собирал из портежа

emerge -av "=net-firewall/ipset-6.4"

Ядро патчил по инструкции ебилда. После патча пересобирал.

Вручную модуль не грузил. Судя по lsmod он загружается автоматом.

Кстати, если попытаться создать правило с заведомо отсутствующим списком ipset получается:

iptables -A INPUT  -m set --match-set t src -j ACCEPT
iptables v1.4.10: Set t doesn't exist.

Правильно ли я понял, что ipset не находит набор t о чём и сообщает. Т.е. модуль загружен и отвечает об отсутствие набора.

 

Забыл упомянуть

 

cat /proc/net/ip_tables_matches
limit
state
string
conntrack
conntrack
owner
mark
connmark
udplite
udp
tcp
addrtype
addrtype
hashlimit
iprange
tos
dscp
multiport
icmp

ipset в списке нет. Должен быть?

 

Прошу подсказать в чём я ошибся.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

iptables -A INPUT -m set --match-set tst src -j ACCEPT

Попробуй так, авось поможет

iptables -A INPUT -m set --set tst src,dst -j ACCEPT

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

iptables -A INPUT -m set --match-set tst src -j ACCEPT

Попробуй так, авось поможет

iptables -A INPUT -m set --set tst src,dst -j ACCEPT

 

Увы, не помогло. А почему src,dst, если у меня только один параметр в наборе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Проблема решилась установкой IPset версии 6.7-r1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Столкнулся с аналогичной проблемой на Slackware 13.37.0 ядро

uname -a
Linux darkside 2.6.39.4-smp #2 SMP Thu Oct 6 15:44:19 EEST 2011 i686

ipset версии

 ipset -V
ipset v6.9.1, protocol version: 6

iptables -V
iptables v1.4.12.1

при добавлении правила выскакивает ошибка

/usr/sbin/iptables -t mangle -A PREROUTING -m set --match-set UKRAINE src,dst -j MARK --set-mark 2
iptables: No chain/target/match by that name.

хотя правила в ipset добавлены

ipset -L UKRAINE
Name: UKRAINE
Type: hash:net
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 47404
References: 0
Members:
74.125.90.0/23
91.201.40.0/22
91.194.162.0/23
....

отдельно ipset и iptables работают, а вот в связке нет:( где искать загвоздку?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Проблему решили не?У меня та же фигня на ядре 3.1.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

в папке /lib[64]/xtables/ пусто?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ее нету такой папки

есть /usr/local/lib/xtables

там

libip6t_ah.so
libip6t_dst.so
libip6t_eui64.so
libip6t_frag.so
libip6t_hbh.so
libip6t_hl.so
libip6t_HL.so
libip6t_icmp6.so
libip6t_ipv6header.so
libip6t_LOG.so
libip6t_mh.so
libip6t_REJECT.so
libip6t_rt.so
libipt_ah.so
libipt_CLUSTERIP.so
libipt_DNAT.so
libipt_ecn.so
libipt_ECN.so
libipt_icmp.so
libipt_LOG.so
libipt_MASQUERADE.so
libipt_MIRROR.so
libipt_NETFLOW.so
libipt_NETMAP.so
libipt_realm.so
libipt_REDIRECT.so
libipt_REJECT.so
libipt_SAME.so
libipt_SNAT.so
libipt_ttl.so
libipt_TTL.so
libipt_ULOG.so
libipt_unclean.so
libxt_addrtype.so
libxt_AUDIT.so
libxt_CHECKSUM.so
libxt_CLASSIFY.so
libxt_cluster.so
libxt_comment.so
libxt_connbytes.so
libxt_connlimit.so
libxt_connmark.so
libxt_CONNMARK.so
libxt_CONNSECMARK.so
libxt_conntrack.so
libxt_cpu.so
libxt_CT.so
libxt_dccp.so
libxt_devgroup.so
libxt_dscp.so
libxt_DSCP.so
libxt_esp.so
libxt_hashlimit.so
libxt_helper.so
libxt_IDLETIMER.so
libxt_iprange.so
libxt_ipvs.so
libxt_LED.so
libxt_length.so
libxt_limit.so
libxt_mac.so
libxt_mark.so
libxt_MARK.so
libxt_multiport.so
libxt_NFLOG.so
libxt_NFQUEUE.so
libxt_NOTRACK.so
libxt_osf.so
libxt_owner.so
libxt_physdev.so
libxt_pkttype.so
libxt_policy.so
libxt_quota.so
libxt_rateest.so
libxt_RATEEST.so
libxt_recent.so
libxt_sctp.so
libxt_SECMARK.so
libxt_set.so
libxt_SET.so
libxt_socket.so
libxt_standard.so
libxt_state.so
libxt_statistic.so
libxt_string.so
libxt_tcpmss.so
libxt_TCPMSS.so
libxt_TCPOPTSTRIP.so
libxt_tcp.so
libxt_TEE.so
libxt_time.so
libxt_tos.so
libxt_TOS.so
libxt_TPROXY.so
libxt_TRACE.so
libxt_u32.so
libxt_udp.so

Изменено пользователем 6PATyCb

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а тут что /proc/net/ip_tables_matches set есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

а тут что /proc/net/ip_tables_matches set есть?

Я разобрался вроде. Слинковал папку /usr/local/lib/xtables в /lib/xtables

и вручную сделал modprobe xt_set

После этого в /proc/net/ip_tables_matches появился set и правила начали проходить

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.