CentOS5 32비트 컴퓨터에서 컴파일하는 ipset
중 이상한 오류가 발생했습니다.
내 커널:
[root@localhost ipset-4.5]# uname -a
Linux localhost.localdomain 2.6.18-400.1.1.el5 #1 SMP Thu Dec 18 00:58:32 EST 2014 i686 i686 i386 GNU/Linux
IP 세트 버전:
[root@localhost ipset-4.5]# ipset -V
ipset v4.5, protocol version 4.
Kernel module protocol version 4.
해시를 만들어 보세요.
[root@localhost ipset-4.5]# ipset --create test macipmap --network 192.168.10.0/24
ipset v4.5: Unknown set type
man
예제를 확인 하고 여기에서 시도했지만 운이 없었습니다.
[root@localhost ipset-4.5]# ipset -N test iphash --probes 2
ipset v4.5: Unknown set type
iptables 규칙:
[root@localhost ipset-4.5]# iptables -A INPUT -m set --set badips src -j DROP
iptables v1.3.5: Couldn't load match `set':/lib/iptables/libipt_set.so: cannot open shared object file: No such file or directory
iptables 버전:
[root@localhost ipset-4.5]# iptables -V
iptables v1.3.5
[root@localhost ipset-4.5]# rpm -qa | grep iptables
iptables-1.3.5-9.2.el5_8
답변1
나는 스스로 해결책을 찾았습니다.
ip_set_iphash.ko
커널 모듈을 로드해야 합니다 .
# insmod /lib/modules/2.6.18-400.1.1.el5/extra/ip_set_iphash.ko
libipt_set.so
iptables v1.3.5 에는 이를 수정할 라이브러리가 없습니다 . 다음을 수행하십시오.
# wget http://ftp.neu.edu.cn/mirrors/CentALT/5/i386/iptables-1.3.5-5.6.1.el5.i386.rpm
# rpm2cpio iptables-1.3.5-5.6.1.el5.i386.rpm | cpio -idmv
# cp lib/iptables/libipt_set.so /lib/iptables/libipt_set.so