Mustafa CavusogluMC

Command Palette

Search for a command to run...

AboutExperiencesProjects
Linux3Docker7Git4Kubernetes4Network2uv1Miniconda1
Back to Home
Network

Network troubleshooting tools: ping, traceroute, netstat, tcpdump and container network debugging

troubleshootingdebugpingtraceroutenetstattcpdumpgrpccurlss

Network Troubleshooting

Tools for detecting and resolving network issues in MLOps environments.

Basic Connectivity Tests

ping -c 4 google.com
ping -c 4 192.168.1.1

traceroute google.com

nc -zv hostname 8080
nc -zv 192.168.1.100 5432

telnet hostname 80

Connection and Port Monitoring

ss -tlnp
netstat -tlnp

ss -tlnp | grep :8080
lsof -i :8080

ss -s
ss -ant

DNS Troubleshooting

dig example.com
nslookup example.com

dig @8.8.8.8 example.com
dig +trace example.com
dig -x 8.8.8.8

HTTP/API Debugging

curl -v https://api.example.com/health
curl -I https://api.example.com

curl -o /dev/null -s -w "Total: %{time_total}s
" https://api.example.com

curl --retry 3 --retry-delay 2 https://api.example.com

Packet Capture

sudo tcpdump -i eth0
sudo tcpdump -i any port 8080
sudo tcpdump host 192.168.1.100
sudo tcpdump -i eth0 -w capture.pcap
sudo tcpdump -i any -A port 80

Container Network Debugging

docker inspect --format='{{.NetworkSettings.IPAddress}}' container_name

docker exec -it container_name sh -c "ping -c 2 other-container"
docker exec -it container_name sh -c "curl -v http://service:8080"

kubectl exec -it pod-name -- curl http://service:8080
kubectl exec -it pod-name -- nslookup service-name

kubectl run debug --image=busybox --rm -it -- nslookup kubernetes.default

gRPC Debugging

grpcurl -plaintext localhost:50051 list
grpcurl -plaintext localhost:50051 list my.service.MyService

grpcurl -plaintext -d '{"name": "test"}' localhost:50051 my.service.MyService/GetPrediction

grpcurl -plaintext localhost:50051 grpc.health.v1.Health/Check

System Network Information

ip addr show
ifconfig

ip route show
route -n

arp -a

# Bandwidth test
iperf3 -s
iperf3 -c hostname