Replies: 5 comments 6 replies
-
@peteeckel I think the behavior should follow the setting, true or false. If uniqueness is not forced, then let it fly and every PTR can have it's own TTL. If it is, then I actually think I prefer the current, existing solution. If I read through all the NetBox DNS documentation, I don't see anywhere it says that TTL of a PTR is derived from it's source record, nor do I see that TTL is updated in accordance with the source (only name and value are mentioned). The way I see it, is PTR is a convenience that if it doesn't exist, you have to pick something (either the value of the source or the PTR zone's default), so I'm fine with picking source. But if it does exist, uniqueness should remain required and either:
I also think that this is a losing battle that fades away sooner rather than later. I know of at least 3 major DNS providers that don't at all allow you to have differing TTLs at all. If I want to be able to sync my source of truth into those providers, I want to know I'm getting a predictable result (that's actually why I brought it up in the first place because I was using octodns and things were getting weird when I was testing). |
Beta Was this translation helpful? Give feedback.
-
Your internal Jeremy is obviously missing something :-) You may be able to see the I'm already in object permission hell because of the IPAM coupling stuff. @jean1 really needs the fine-grained access control (which is why he put a lot of weight on it), but it's very difficult to decide where to stop evaluating object permissions. IMHO the whole object permission jungle should end where automatically doing stuff begins, but requirements vary. |
Beta Was this translation helpful? Give feedback.
-
It's even better: You always have control over your Option 3 is extremely intransparent, especially under the (exotic) circumstances I outlined above. And it might not even be enforcable if you can't see the other record ... that's my main issue with it. And in that case you may not have access and you're not even allowed to know why. |
Beta Was this translation helpful? Give feedback.
-
That's an organisational question rather than a technical one. If you are in an organisational unit that controls DNS (network department or whatever) for the organisation, likelihood is high that you're in charge of both directions, name to address and vice versa. There will also be parts of the reverse zone space that are not, however - think about external IP addresses, where you have the delegation for the forward zone but not for the reverse zone, or only for parts of the reverse zone (think IPv4 and CIDR, leading immediately to RFC2317 ... oh the horror!). That's exactly the reason why there is the Generally, when you are in the situation of having to manage most of the DNS zones, you will want to have your
Again, you might not even be allowed to know that there is another record ... implementing this is like opening the proverbial can of worms, and you probably cannot win. I am really very reluctant to invest a ton of work in an exotic edge case. If you want to do it, your contribution will be welcome, but please include a reasonable set of tests. And please make it optional ... |
Beta Was this translation helpful? Give feedback.
-
Hi @squintfox, I value your input highly ... Don't get me wrong: it's not that I don't like the idea, I just don't currently see a very high priority attached to it. RFC2317 is only a part of the IPv4 problem: Delegation is hard and can't be done for subnets smaller than /24, but RFC2317 makes it possible for more people to keep in charge of their reverse zones, which again affects automatic Yes, NetBox DNS (as well as the whole NetBox ecosystem) is designed to be the source of truth, so the data contained there is the input to other systems, not vice versa. As such, the idea is generally to create data that's as correct as possible. The point in auto-creating There are, however, much more pressing problems that a potential issue with TTLs of And don't worry - a name server won't crash if fed with invalid records. In the very worst case it will refuse to load the zone. In the case of inconsistent TTLs I would expect it to give a warning and load the zone anyway, or to fix the TTLs of its own accord - after all, 'deprecated' doesn't mean 'illegal' (as, for instance, with underscores except in some well-defined exceptions). Anyway, I will definitely think about a solution, but don't hold your breath ... it may take some time, and it will very likely not happen before May, when NetBox 4 will be released. After all, most of the NetBox DNS development is done as a side job in addition to paid consultancy work, although an increasing part of that is related to and relying on it ... |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
The "Unique TTL for RRSets" feature unfortunately creates a conflict that cannot be resolved in a simple and consistent way.
Assume we have the following records (in a single zone
zone1.example.com
, although the problem isn't limited to single zones):NetBox DNS creates
PTR
records automatically, and uses the TTL of the address record for thePTR
record as well. Now creating the above set ofA
records would create the following list ofPTR
records in zone0.0.10.in-addr.apra
:In this case, we get inconsistent TTLs for the two
PTR
RRSets, which the current implementation tries to override by adjusting the TTL of the PTR record for the address record created first to the TTL of the record - moving the inconsistency elsewhere, i.e. now theA
that was created first has aPTR
record with a different TTL, which is worse.There does not seam to be a reasonable way out of this catch-22. The three options that come to my mind are:
PTR
RRSets with differing TTLs in this specific situation, i.e. for PTR recordsPTR
TTL from that of the associated address recordThe first seems to be the most transparent and least intrusive to me. I would not want to implement the second because it will create inconsistencies with cached RRs, and the third variant is extremely problematic because it will also work across zones, which may be in different peoples responsibilities.
Another issue arises with the
cleanup_rrset_ttls
management command, which currently yields somewhat random results depending on whether thePTR
record or the address record is found first.Given the fact that the situation is somewhat constructed and probably rare, and that having different TTLs is merely deprecated, not forbidden, I think that the first variant, i.e. not enforcing TTL uniqueness for
PTR
records, is the most reasonable choice and will implement it for the time being, but I'm open for discussion and better ideas.Beta Was this translation helpful? Give feedback.
All reactions