Skip to content

Instantly share code, notes, and snippets.

@sturadnidge
Last active July 17, 2020 04:15
Show Gist options
  • Star 2 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sturadnidge/7290992 to your computer and use it in GitHub Desktop.
Save sturadnidge/7290992 to your computer and use it in GitHub Desktop.
awk one liner to convert netlogon.dns to dnsmasq srv-host format
# 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
@Tsaukpaetra
Copy link

Nice!

@owenthewizard
Copy link

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