Hi Christer, Thanks for the review! Some responses inline. Best, Tommy
In general, the CFG_REQUEST attributes are a bit loose—they're hints more than requirements. From section 3.15.1 of RFC7296: The CFG_REQUEST and CFG_REPLY pair allows an IKE endpoint to request information from its peer. If an attribute in the CFG_REQUEST Configuration payload is not zero-length, it is taken as a suggestion for that attribute. The CFG_REPLY Configuration payload MAY return that value, or a new one. It MAY also add new attributes and not include some requested ones. Unrecognized or unsupported attributes MUST be ignored in both requests and responses. So, the CFG_REPLY MUST have a DNS server to go along with the DNS domain, but I left the SHOULD in spirit of the fact that the CFG_REQUEST is more of a suggestion.
That being said, if others in the WG would like to see this be a MUST, I'm fine with that as well. I don't think we should have the responder error out if it doesn't see both, however.
This one could be a MUST. The one exception I could see is if the initiator was statically configured with some split DNS domains to use as split domains In case the responder didn't provide any in the CFG_REPLY, it should still use those and not send all DNS queries inside the tunnel. I wouldn't want this MUST to disable the static configuration workarounds that implementations have done prior to allowing split DNS to be negotiated.
- The prior art for split DNS in IKEv1 - The fact that this is currently mainly seen in enterprise VPN deployments These points could indeed be moved to the introduction. I had felt they fit better as "background" since they're not essential to the description of the protocol, but give context that is relevant now (and may be less so in the future).
|