/** * Create a transport that is used to read / write DNS messages. * * @param string $server * @return Transport */ protected function createTransport(string $server) : \Generator { return $this->transport !== null ? clone $this->transport : new SocketTransport((yield Socket::connectClient('udp://' . $server))); }