common/schema: add Src/DstAddrNAT, Src/DstPortNAT, DstPortNAT`

Also parse them for IPFIX.

Fix #211
This commit is contained in:
Vincent Bernat
2023-01-19 19:31:23 +01:00
parent 4d30445099
commit 78caf8e07b
5 changed files with 32 additions and 23 deletions

View File

@@ -123,6 +123,16 @@ func (nd *Decoder) decodeRecord(version int, fields []netflow.DataField) *schema
case netflow.NFV9_FIELD_OUTPUT_SNMP:
bf.OutIf = uint32(decodeUNumber(v))
// NAT
case netflow.IPFIX_FIELD_postNATSourceIPv4Address:
nd.d.Schema.ProtobufAppendIP(bf, schema.ColumnSrcAddrNAT, decodeIP(v))
case netflow.IPFIX_FIELD_postNATDestinationIPv4Address:
nd.d.Schema.ProtobufAppendIP(bf, schema.ColumnDstAddrNAT, decodeIP(v))
case netflow.IPFIX_FIELD_postNAPTSourceTransportPort:
nd.d.Schema.ProtobufAppendVarint(bf, schema.ColumnSrcPortNAT, decodeUNumber(v))
case netflow.IPFIX_FIELD_postNAPTDestinationTransportPort:
nd.d.Schema.ProtobufAppendVarint(bf, schema.ColumnDstPortNAT, decodeUNumber(v))
// Remaining
case netflow.NFV9_FIELD_FORWARDING_STATUS:
nd.d.Schema.ProtobufAppendVarint(bf, schema.ColumnForwardingStatus, decodeUNumber(v))