Не идеально.
Вы можете определить, находитесь ли вы на локальной сети с IP-адреса (при условии, что ваш локальный DHCP-сервер раздал один из частных адресов 192.168.xx.xx.)
Вы можете пропинговать известный внешний сайт, чтобы проверить, есть ли у этой сети интернет-соединение.