uses a blocking DNS lookup for implementation, and is not even idempotent