I don't claim to be competent with NAPTR records -- having never used them in production -- but from the RFC (2915), it appears you need to express those backslashes, in the wire format of the NAPTR record, as *double* backslashes in the zone file:

For the case of the cid.urn.arpa record above,
  the regular expression entered into the master file should be
  "/urn:cid:.+@([^\\.]+\\.)(.*)$/\\2/i".  When the client code actually
  receives the record, the pattern will have been converted to
  "/urn:cid:.+@([^\.]+\.)(.*)$/\2/i".

[...]

Beware of regular expressions.  Not only are they difficult to get
  correct on their own, but there is the previously mentioned
  interaction with DNS.  Any backslashes in a regexp must be entered
  twice in a zone file in order to appear once in a query response.
  More seriously, the need for double backslashes has probably not been
  tested by all implementors of DNS servers.

                                                                        - Kevin


sandoche BALAKRICHENAN wrote:

I want to rewrite a query of the form "sgtin.5.4.0.0.0.1.3.2.4.5.6.7.6.id.onsam.test" to "sgtin.5.4.0.0.0.1.3.2.4.5.6.7.6.id.onseu.test" using NAPTR rewrite.

The NAPTR RR in the zone config is as follows:

sgtin.5.4.0.0.0.1.3.2.4.5.6.7.6.id.onsam.test IN NAPTR 0 0 "r" "" "!^sgtin\.([0-9])$!\1.id.onseu.test!" .

BIND does not  accept backref "\1" . It shows a syntax error.

Is the above regexp correct?






_______________________________________________
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users

_______________________________________________
bind-users mailing list
bind-users@lists.isc.org
https://lists.isc.org/mailman/listinfo/bind-users

Reply via email to