내가 작업하고있는 네트워크 보안 프로젝트의 경우 mongoDB 컬렉션의 내 국가 및 기타 관련 필드의 모든 IP 목록이 있습니다. 이처럼mongoDB mongoengine의 다중 필터
:
{
"_id" : ObjectId("56674d3d9ee3d40b79167e09"),
"ip" : "200.6.116.75",
"server" : "Microsoft-IIS/7.5",
"date" : "2015-11-23"
}
것은 지금 내가 그들의 주어진 ASN (자율 시스템 번호)를 필터링 할 것입니다. 나는 ASN과 주어진 IP 블록을 가지고있는 다른 컬렉션을 가지고있다. 다음은 주어진 ASN에 대한 쿼리 필터링을 만들 수있는 간단한 방법이 지금
{
"_id" : ObjectId("572ba2611c8e25e0a9c44f64"),
"ASN" : "6429",
"ip_block" : "200.14.215.0/24"
}{
"_id" : ObjectId("572ba2611c8e25e0a9c44f65"),
"ASN" : "6429",
"ip_block" : "200.27.0.0/16"
}
ASN 6429에 대한 예입니다?
구체적으로, 주어진 ASN과 일치하는 모든 IP에 대해 IP가 해당 ASN의 IP 블록 내에서 일치하는지 묻는 질문을하고 싶습니다.
내가 할 수있는 또 다른 일은 단지 데이터를 요청하고 ASN 당 필터링하지 않는 것입니다. 그런 다음 파이썬에서 일들을 필터링 할 수 있지만 DBMS에서 이러한 쿼리를 수행해야합니다.
힌트를 주시면 감사하겠습니다.
에 따라 그룹에 영향을해야합니다 -
쿼리 생성이 까다로운 일이 될 수있다. 감사! –