Native Go lookups recheck /etc/resolv.conf at minimum every 5 seconds. Cgo lookups should do the same. Currently, you can run into an issue where resolv.conf changes, Go picks it up, but a strange hostname (with \ escapes) is kicked to cgo and fails.