ipset(8)
동일한 규칙에 IPv4 및 IPv6 IP 세트( )를 가질 수 있습니까?
한 IPv4 주소 세트와 다른 IPv6 주소 세트에 의존하지만 그 외에는 동일한 여러 규칙이 있습니다.
ipset(8)
유망해 보이지만 현재 문제를 해결하지 못하는 기능이 있다는 점을 덧붙이고 싶습니다 .
list:set
The list:set type uses a simple list in which you can store set names.
[...]
Please note: by the ipset command you can add, delete and test the
setnames in a list:set type of set, and not the presence of a set's
member (such as an IP address).
답변1
그것은 밝혀리차드맞다. 이 list:set
유형은 실제로 해결책입니다. 비록 문서의 표현이 오해의 소지는 아니더라도 다소 혼란스럽다고 생각합니다.
다음과 함께 사용할 수 있습니다 ipset restore
.
create dns4 hash:ip family inet
create dns6 hash:ip family inet6
create dns list:set
add dns dns4
add dns dns6
그런 다음 ipset add
IP를멤버 세트(즉 dns4
, dns6
각각), 하지만 그렇지는 않습니다.슈퍼세트( dns
) 유형 list:set
.
그러나 SET
( -j SET --add-set dns src --exist
) 대상은 실제로 IP를 에 추가한 dns
다음 가능한 세트에만 추가하도록 지시받을 수 있으며, 우리의 경우 옵션에 따라 다릅니다 family
. IP(또는 네트워크 등)를 추가할 수 있는 세트가 많아지면 이는 더 어려워지며, 이 경우 첫 번째 세트가 항목을 추가하는 데 사용됩니다.
즉, list:set
규칙 수를 절반으로 줄이는 데 사용할 수 있습니다. 그렇지 않으면 각 IPv4 및 IPv6 규칙의 IP 세트를 동일한 다른 규칙과 별도로 일치시켜야 합니다.