[dnstap] Reserving dnstap field numbers

Stephen Vickers stephen.vickers at telemity.com
Tue Jul 21 20:07:32 UTC 2026


Hi All,

I am looking into an option to utilise dnstap to forward "DNS entity updates".  Here DNS entities are unique DNS clients (e.g. client IP addresses), unique query names, unique record, and unique query name/DNS client pairs among others.  The reason I am looking to use dnstap is that I can use the same infrastructure components in a product we have developed to forward both DNS messages, entity updates (first seen, last seen, count, etc.).

We'd be looking to extend dnstap with an additional type alongside `Message` - current thinking is `Entity`.

My initial question is how to approach this, in that can we get a field number reserved like `Message` - the parts marked "XXX":

<snip>
    // Identifies which field below is filled in.
    enum Type {
        MESSAGE = 1;
        ENTITY = XXX;
    }
    required Type       type = 15;

    // One of the following will be filled in.
    optional Message    message = 14;
    optional Entity    entity = XXX;
</snip>

Regards
Stephen Vickers


More information about the dnstap mailing list