diff --git a/lib/connection.js b/lib/connection.js index 489a5afd9..5ca746a79 100644 --- a/lib/connection.js +++ b/lib/connection.js @@ -91,9 +91,8 @@ Connection.prototype.connect = function (port, host) { return self.emit('error', new Error('There was an error establishing an SSL connection')) } var tls = require('tls') - self.stream = tls.connect({ + const options = { socket: self.stream, - servername: host, checkServerIdentity: self.ssl.checkServerIdentity || tls.checkServerIdentity, rejectUnauthorized: self.ssl.rejectUnauthorized, ca: self.ssl.ca, @@ -103,7 +102,11 @@ Connection.prototype.connect = function (port, host) { cert: self.ssl.cert, secureOptions: self.ssl.secureOptions, NPNProtocols: self.ssl.NPNProtocols - }) + } + if (net.isIP(host) === 0) { + options.servername = host + } + self.stream = tls.connect(options) self.attachListeners(self.stream) self.stream.on('error', reportStreamError)