Also, ich habe schon einiges in VB gemacht, daher nun mal meine ersten Versuche von Lösungsansätzen für dich:
1)
Guck mal unter "Internet-Steuerelement", "Internet Transfer Control" bzw. "WinSock-Steuerelement" - Speziell letzteres kann universelle TCP-IP-Verbindungen herstellen.
Da stellt man dann eine RemoteHost und RemotePort ein, z.B. einen bekannten Internet-Server (per Ping mal nachschlagen) - Dann führst du ein Connect aus - Ab dem Moment kannst du dann z.B. mit LocalHost deine eigene IP im WWW nachschlagen - Das funktioniert an und für sich auch über einen Router, da dieses WinSock sich an die Internet-Einstellungen des Browser dranhängen müsste.
Den Status der Internet-Verbindung zu bestimmen ist schon lästiger (-> Windows API).
Alle diese Themen sind sehr schön in den Tipps&Tricks bei www.vb-archiv.de beschrieben. Da gibt es alles zu Internet-Verbindungen, Browser auslesen etc.
Viel Glück!
Rouven