Sample code for 30+ languages & platforms
Dart

Check Internet Connectivity

See more Socket/SSL/TLS Examples

Demonstrates an efficient way to test for Internet connectivity.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  final socket = CkSocket();
  // 1. Use a reliable Anycast IP. 
  //    8.8.8.8 (Google) or 1.1.1.1 (Cloudflare) are the industry standards.
  final targetIp = '8.8.8.8';

  // 2. Use Port 53 (DNS). 
  //    DNS servers typically listen on TCP Port 53 as well as UDP. 
  //    (Alternatively, use port 443 if you suspect port 53 is blocked).
  final port = 53;

  // 3. Disable SSL (0). 
  //    We are not doing a handshake, just a TCP connection.
  final ssl = false;

  // 4. Short Timeout (1500ms).
  //    If you can't reach Google in 1.5 seconds, the connection is 
  //    likely too poor for practical use anyway.
  final timeoutMs = 1500;

  // Connect
  try {
    socket.connect(targetIp, port, ssl, timeoutMs);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  socket.close(10);

  print('We have Internet connectivity.');
}