-
Notifications
You must be signed in to change notification settings - Fork 24.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ingest node: IP Address Processor #38064
Comments
Pinging @elastic/es-core-features |
related: #36145 |
I've started working on it, my initial proposal for config looks like:
I've also thought about adding matching network by CIDR, something like:
but I think this type of tasks is better suited for enrich processor. Processor will work with single ip address as well as list to be in line with #49573 . In that case it will return list in every field filled with nulls where it can't compute values and skipped if there are only nulls in list. |
Can I suggest the config to be
so for a config of
an input document of { "myip" : "::1%0" } results in a document like: {
"myip":"::1%0",
"mytarget":{
"ip":"::1",
"ip_zone":"0",
"ip_version":6,
"ip_class":"?? is this a thing with ipv6 ?? , if not don't add",
"ip_type":"loopback"
}
} We will want to work with @webmat on the names and types, since i would expect that "mytarget" would really be something like the ecs host. We would also want to default to not override the existing target. |
If enriching/fixing incoming ECS data is a usecase we should consider allowing
to also work, with an option (default to true) to replace the ip field. e.g. {
"host":{
"ip":"::1%0"
}
} results in {
"host":{
"ip":"::1",
"ip_zone":"0",
"ip_version":6,
"ip_class":"?? is this a thing with ipv6 ?? , if not don't add",
"ip_type":"loopback"
}
} (note |
Hello @jakelandis, do you have some news for this issue ? |
There is a need to properly handle IPv6 zone_id's , see #37107.
The IP data type only allows 128 bits to be indexed and an IPv6 address with a zone_id fails will fail to parse as an IP. Elasticsearch can't simply ignore the zone_id from indexing since that would silently change the fidelity of that data and there is no desire to support zone_id's at a low level.
A current solution is to use Grok to split the address and zone_id, which works, but can be cumbersome to implement.
For these reasons, I propose an IP Address Processor for the ingest node.
The IP Address Processor will be able to
It may also be
IPv6 zone_id : https://tools.ietf.org/html/rfc4007
IPv6 address: https://tools.ietf.org/html/rfc3513
The text was updated successfully, but these errors were encountered: