Skip to content

Exercise - Computer Networks & Internet

Munich Technical University / Chair of Geoinformatics
Murat Kendir*, Jicang Zhu, Prof. Thomas Kolbe
murat.kendir@tum.de
v. WiSe 2025-2026
import iplantuml

Table of Contents

1. Examining the Network & Internet Infrastructure

%%plantuml

@startuml
cloud "School Network" {
  node "Computer-1" as computer1 {
    node "Virtual Machine 1" {
      artifact "Sub-Local IP Address 1" as add11
    }
    artifact "Local IP Address 1" as add1
  }
}
node "Router / Gateway" as edge
node "Internet Service Provider (ISP)" as isp
add1 -> edge : Local IP Address
add11 .> add1 : Port Forwarding
edge -> isp : Global IP Address
@enduml
Writing output for /home/murat/gitpot/dist-gis-exercises/docs/notebooks/1b2ea486-0fee-4602-a731-859f74cd6b71.uml to 1b2ea486-0fee-4602-a731-859f74cd6b71.svg

svg

1.1. IP Addresses

1.1.1. Local IP Adress

The following steps explain how to reveal IP addresses using command-line based applications. This means you need to run a Command Line Interface (CLI) tool to execute them. Traditionally, CLI tools are called “Command Prompt” (or CMD) on Windows systems and “Terminal” on Unix-based systems.

The name of the Command Prompt application is called “EinGabeAufForderung” on Windows computers with German as the system language.

As an alternative for CMD, you can also use Powershell CLI tool in Windows computers.

In Windows Systems, it is possible to reveal out the IP addresses (both of v4 and v6) with the ipconfig command

ipconfig /all

In Linux-based Systems, you can use multiple commands such as ip, ifconfig etc.

On Linux-based Systems, inet stands for Ipv4, inet6 stands for Ipv6.

ifconfig <INTERFACE-NAME>
ip address show
The Level of the IP Adresses in Internet Protocol Suite
The Level of the IP Adresses in Internet Protocol Suite
IPv4 and IPv6 addresses are exposed in the CMD tool
IPv4 and IPv6 addresses are exposed in the CMD tool

1.1.2. Global IP Address

There are many methods for revealing a computer network's global IP address. This IP address is usually automatically assigned to users by their ISP company. In some cases, users may prefer not to change their global IP addresses. In this case, they can request static IP addresses from their ISP.

Method 1: Using a web site

Method 2: Accessing to router interface

IPv4 and IPv6 addresses are exposed in the CMD tool
The global IP address displayed in the “Status” section of the router's web interface

Method 3: Sending a request to an API

Windows Powershell Command:

(Invoke-WebRequest "http://ifconfig.me/ip").Content.Trim()

IPv4 and IPv6 addresses are exposed in the CMD tool
sending a request to ifconfig.me/ip API in Powershell

Linux Terminal Command:

curl ifconfig.me/ip

Via "NSLookUp":

nslookup myip.opendns.com. reseolver1.opendns.com

TIP: If your Unix-based system cannot run the nslookup or ifconfig commands, you can search for and install the “net-tools” package in your system's default application repository. For example, on Ubuntu, it can be installed with the command sudo apt install net-tools

1.1.3. How to reveal an IP address of a web source?

NSLookup is a tool that can be used to query a server's DNS records. By default, this tool checks the A-type DNS record. However, there are other types of DNS records that can be queried using the same tool.

IPv4 and IPv6 addresses are exposed in the CMD tool
Different DNS record types listed in a DNS record management system.

If not restricted for security purposes, it is possible to resolve the IP address of web servers that provide certain services through domain(s). For this purpose, "nslookup" or some web applications (such as mxtoolbox.com, nslookup.io) can be used.

nslookup geodienste.hamburg.de
  • Copy the IP adress of the web server and by using the command above and paste into address bar of your browser.
    • What is the result?

TIP : If you query an IP address directly using the nslookup command, it performs a reverse lookup by querying the in-addr.arpa (IPv4) or ip6.arpa (IPv6) zone. If a PTR record exists for that address, the command returns the domain name mapped to the IP.

1.1.4. Checking other DNS records of a domain

You can set the type option to expose out other DNS record types (A, AAA, CNAME, MX, NS, SOA):

nslookup -type=mx www.asg.ed.tum.de

2. Ping Command

The “Ping” command can be used to measure network performance between the request and the web resource. Keep in mind that the purpose of the web resource may cause differences in the results. In addition, the location of the request may also affect the result. (For example, querying a web resource located in China from Frankfurt does not mean that the same web resource will return the same result in China.)

  • Type “ping -n amazon.DOMAIN_SUFFIX” for different countries that may be near or far from the current country. (For Exp. COM / DE / AU / NZ / CN )
    • ping -c 3 mit.edu (using a CDN which serves sources from Germany)
    • ping -c 3 stanford.edu (located in USA)
    • ping -c 3 www.tsinghua.edu.cn (located in China)
    • ping -c 3 sydney.edu.au (located in Australia)
    • ping -c 3 www.u-tokyo.ac.jp (located in Japan)

TIP: "Count" option named as "Number" in the Windows version of the ping command. Use "-n" option instead of "-c" in Windows computers.

TIP: In a unix-based system, you can use geoiplookup to resolve the location of the web resources.

3. Background Information about the Current Internet Infrastructure (Optional Step)

If you would like to learn more about the current internet infrastructure, you can visit the following websites or follow the instructions below.

  • Global Internet Map (2022): telegeography
  • 40 Maps that Explain Internet (Vox, 2014) : vox.com/a/internet-maps
  • Map of the Submarine Cables (2025) : submarinecablemap.com
  • Check the Cloud Service Reachability with "cloudping" online tool:
    • Visit and make ping test for any cloud service provider cloudping.cloud
    • Use a VPN browser extension to spoof your location as another country and try the ping test again.

4. Dig Command (available on Linux)

If your Unix-based system does not have the "dig" program, you can install it by installing the "dnsutils" program.

  • Type dig <WEB_DOMAIN> to resolve the DNS records of the given domain.
    • Copy the IP address shown as the target machine for the "A" type DNS record.
  • Type dig +answer -x <COPIED_IP_ADDRESS> to perform a reverse lookup.
  • If you have a web domain name, you can compare the previous results with the records accessible from your domain name management system. (For exp. go to Domains > DNS-Records in GoDaddy web site)
  • Alternatively, you can visit dnschecker.org and query for the same web sites using "DNS-Lookup" tool.
IPv4 and IPv6 addresses are exposed in the CMD tool
Source: https://w3.cs.jmu.edu/kirkpams/OpenCSF/Books/csf/html/UDPSockets.html

5. Traceroute Command (available on Linux)

To expose the "hops" while you request any source from internet, you can use "traceroute" command. Traceroute is a standalone application that can be installed with command sudo apt install traceroute. Another option is using dig with "+trace" argument (For exp. dig <WEB_DOMAIN> +trace). Note that the location of the person making the request plays an important role in the route of the hops that appear as a result of the traceroute query.

  • Find a web domain name whose server is located in Germany and try the traceroute command with it.
    • Sample : traceroute tum.de or dig tum.de +trace
  • Find a web domain name whose server is located in far country and try traceroute command on it.
    • Alternatively, you can spoof your location using VPN browser extension and run the traceoute command.

TIP: If you cannot run the traceroute or dig command on your Linux machine, you can use the tracing tools available on the online network tool sites mentioned earlier.

IPv4 and IPv6 addresses are exposed in the CMD tool
A simplified Computer Network Diagram showing how the traceroute command works