diff --git a/network/network.sh b/network/network.sh
new file mode 100755
index 0000000000000000000000000000000000000000..bbd27ee1332c2020d7a0c08344d35fbcb8b561ad
--- /dev/null
+++ b/network/network.sh
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+set -e
+
+if [ "$LAVA" = "y" ]; then
+    alias test-result='lava-test-case'
+    alias test-exception='lava-test-raise'
+else
+    alias test-result='echo'
+    alias test-exception='echo'
+fi
+
+if ! command -v nc >/dev/null; then
+    echo "nc could not be found"
+    exit 1
+fi
+
+set -- "google.com" \
+    "kernel.org" \
+    "deb.debian.org" \
+    "gitlab.collabora.com" \
+    "gitlab.freedesktop.org" \
+    "images.apertis.org"
+
+count=0
+for domain in "$@"; do
+    if nc -vz -w 1 "$domain" 443; then
+        res=pass
+        count=$((count + 1))
+    else
+        res=fail
+    fi
+    test-result $domain --result "$res"
+done
+
+if [ "$count" -gt 0 ]; then
+    test-result network-test --result pass --measurement "$count" --units domains
+else
+    test-result network-test --result fail --measurement "$count" --units domains
+    test-exception "Network not able to connect; job exit"
+    exit 1
+fi
+
+exit 0
diff --git a/network/network.yaml b/network/network.yaml
index 694eff41fcc6c72845799c990f254d85706a6fd3..e14e0357ed0cb55c29661360e7730f2196473605 100644
--- a/network/network.yaml
+++ b/network/network.yaml
@@ -5,5 +5,4 @@ metadata:
 
 run:
     steps:
-        - lava-test-case network-test-google --shell 'nc -vz -w 1 google.com 443 || lava-test-raise "Network not able to connect; job exit"'
-        - lava-test-case network-test-kernelorg --shell 'nc -vz -w 1 kernel.org 443 || lava-test-raise "Network not able to connect; job exit"'
\ No newline at end of file
+        - LAVA=y /bin/sh network/network.sh
\ No newline at end of file