Last active
July 17, 2020 04:15
-
-
Save sturadnidge/7290992 to your computer and use it in GitHub Desktop.
awk one liner to convert netlogon.dns to dnsmasq srv-host format
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# if the 4th field is 'SRV', then strip trailing dots, set the output field separator to comma and print accordingly | |
awk '$4 ~ /SRV/ {gsub(/\.( |$)/, " "); OFS = ","; print "srv-host=" $1,$8,$7,$5,$6}' netlogon.dns |
Make sure to dos2unix
netlogon.dns first, or else you'll get something funky like this....
,389,0,100ldap._tcp.ad.example.test,foo-server.ad.example.test.
,389,0,100ldap._tcp.pdc._msdcs.ad.example.test,foo-server.ad.example.test.,389,0,100ldap._tcp.43075dbf-9f96-44b1-b232-2789f687324c.domains._msdcs.ad.example.test,foo-server.ad.example.test.
,389,0,100ldap._tcp.dc._msdcs.ad.example.test,foo-server.ad.example.test.,3268,0,100dap._tcp.gc._msdcs.ad.example.test,foo-server.ad.example.test.
,88,0,100_kerberos._tcp.dc._msdcs.ad.example.test,foo-server.ad.example.test.,88,0,100_kerberos._tcp.ad.example.test,foo-server.ad.example.test.
,3268,0,100c._tcp.ad.example.test,foo-server.ad.example.test.,88,0,100_kerberos._udp.ad.example.test,foo-server.ad.example.test.
,464,0,100kpasswd._tcp.ad.example.test,foo-server.ad.example.test.,464,0,100kpasswd._udp.ad.example.test,foo-server.ad.example.test.
,389,0,100ldap._tcp.Foo-Site._sites.ad.example.test,foo-server.ad.example.test.,3268,0,100dap._tcp.Foo-Site._sites.gc._msdcs.ad.example.test,foo-server.ad.example.test.
,88,0,100_kerberos._tcp.Foo-Site._sites.dc._msdcs.ad.example.test,foo-server.ad.example.test.,389,0,100ldap._tcp.Foo-Site._sites.dc._msdcs.ad.example.test,foo-server.ad.example.test.
,88,0,100_kerberos._tcp.Foo-Site._sites.ad.example.test,foo-server.ad.example.test.,3268,0,100c._tcp.Foo-Site._sites.ad.example.test,foo-server.ad.example.test.
Took me longer than I'll admit to figure that out.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Nice!