Tutorial Network
Introduction
In the previous step of this tutorial, we walked through downloading IGLOS, flashing it to a microSD card, and booting your Raspberry Pi for the first time. After that step, you should have a working system with console access via keyboard and monitor.
While direct console access is useful for initial exploration, embedded systems are typically accessed and managed over a network. In this step, you will learn how to:
- Connect your Raspberry Pi to a network and obtain an IP address via DHCP
- Discover the IP address assigned to your device
- Log into the system via SSH
By the end of this guide, your IGLOS device will be connected to your network and ready for remote access.
Network Connectivity
Connecting to Your Network
IGLOS comes with built-in support for network configuration via DHCP (Dynamic Host Configuration Protocol). This means your Raspberry Pi will automatically request an IP address from your network’s DHCP server when connected to Ethernet.
To connect your Raspberry Pi to your network, connect an Ethernet cable from your Raspberry Pi’s Ethernet port to your network router or switch.
The system will automatically request a DHCP lease from your network and should obtain an IP address within a few seconds.
Finding Your Device’s IP Address
Once your Raspberry Pi is connected to the network, you need to discover which IP address it has been assigned. There are several methods to do this. Expand the one that fits your setup:
Method 1: Check from the Raspberry Pi Console
If you still have keyboard and monitor connected, you can check the IP address directly from the Raspberry Pi’s console.
Log in with the default credentials (if not already logged in):
Username: iglos
Password: iglos
Then run the following command to display network interface information:
ip address
You should see output similar to:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: end0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 2c:cf:67:a1:30:e7 brd ff:ff:ff:ff:ff:ff
altname enx2ccf67a130e7
inet 192.168.1.175/24 brd 192.168.1.255 scope global dynamic noprefixroute end0
valid_lft 85350sec preferred_lft 74550sec
inet6 fe80::63b4:d175:3ae7:884f/64 scope link
valid_lft forever preferred_lft forever
Look for the line starting with inet under the end0 interface. In this example, the IP address is 192.168.1.175.
Method 2: Check from Your Router
Most home network routers provide a web interface where you can view all connected devices.
- Open a web browser on another computer on your network and navigate to your router’s address (e.g.
192.168.178.1, but check your router’s documentation). - Log in with your router’s administrator credentials.
- Look for a section in the main navigation menu labeled something like “Home Network”, “Connected Devices”, “Network Devices”, or “Device List”.
- In this section, you should see a list of all devices currently connected to your network. Look for an entry with:
- Device Name: IGLOS
- IP Address: This is what you need (usually formatted like
192.168.x.x) - MAC Address: Should match the
link/etheraddress of theend0interface
The router’s interface will display the IP address assigned to your device via DHCP.
Method 3: Use Network Scanning Tools
If you have access to your local network from another computer, you can use network scanning tools to discover your device, for example nmap.
First, open a terminal on your computer (see below). If nmap is not already installed on your system, install it first, e.g. on Debian/Ubuntu:
sudo apt-get install nmap
Then run the following command to scan your network:
sudo nmap -sn 192.168.1.0/24
Replace 192.168.1.0/24 with your network’s subnet. The output will list all active devices on your network by IP address, and by hostname where one can be resolved. Look for an entry with Raspberry Pi in it, for example:
Nmap scan report for IGLOS.localdomain (192.168.1.175)
Host is up (0.0030s latency).
MAC Address: 2C:CF:67:A1:30:E7 (Raspberry Pi (Trading))This indicates there is a device with the MAC address 2C:CF:67:A1:30:E7 matching a Raspberry Pi with the IP address 192.168.1.175 and hostname IGLOS.localdomain in your network. But be aware that this is just an indication. There might be other Raspberry Pi’s in your network or even an attacker forging the MAC address and/or hostname. Also, the hostname might not be displayed depending on your network configuration.
Secure Remote Access via SSH
Now that your device has a network IP address, you can access it remotely using SSH (Secure Shell). This allows you to explore your device without needing keyboard and monitor connected.
About SSH for Embedded Systems
⚠️ Important Security Notice
SSH with password authentication is not suitable for production embedded systems. The default user and password should be considered a security risk in any real-world deployment. SSH should be disabled or properly hardened (key-based authentication, restricted user accounts, firewall rules, etc.). Even with a secure configuration as is common for server systems, exposing a shell at all is considered a security risk for many embedded systems, and it can often be replaced by application-specific interfaces. Later steps of this tutorial will cover security hardening in detail, including how to disable SSH and what is typically used in production environments instead.
However, for development and exploration purposes, SSH access is invaluable. It allows you to experiment with the system without physical access, and to develop and test configurations live without lengthy build and update cycles. That is why embedded systems usually come in two image variants: one for internal development and one for production use.
Connect via SSH
Opening a Console/Terminal:
First, open a terminal on your computer:
- Linux: Press
Ctrl+Alt+Tor search for “Terminal” in your application menu. - macOS: Press
Cmd+Space, type “Terminal”, and press Enter. - Windows: Open “Windows Terminal” or “PowerShell” from the Start menu.
Once the terminal is open, connect to your IGLOS device by running:
ssh iglos@YOUR_DEVICE_IP
Replace YOUR_DEVICE_IP with the IP address you found in the previous section. For example:
ssh iglos@192.168.1.175
The first time you connect, SSH will ask you to verify the host’s identity:
The authenticity of host '192.168.1.175 (192.168.1.175)' can't be established.
ECDSA key fingerprint is SHA256:xyzabcdefghijklmnopqrstuvwxyz.
Are you sure you want to continue connecting (yes/no/fingerprint)?
To verify this fingerprint is authentic, you can log into the device locally (keyboard and monitor) and run:
ssh-keygen -l -f /etc/ssh/ssh_host_ecdsa_key.pub
If it matches, type yes and press Enter to continue.
Then, enter the password when prompted:
iglos@192.168.1.42's password:
Enter the default password iglos.
You should now have a remote shell session on your device:
iglos@iglos:~$
Congratulations! You now have remote SSH access to your device.
SSH Access After Reflashing
After you flash the microSD card again, you will likely get the following message the next time you try to log in:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:V7dLUJtQBCe6Y9smfMf0faNydAUWND8dkZoTMPd6Zwf.
Please contact your system administrator.
Add correct host key in /home/username/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/username/.ssh/known_hosts:129
remove with:
ssh-keygen -f '/home/username/.ssh/known_hosts' -R '192.168.1.175'
Host key for 192.168.1.175 has changed and you have requested strict checking.
Host key verification failed.
Normally, you should be concerned when seeing this message, but in this case it is expected because the SSH host key was regenerated. Verify the fingerprint again as described above, then run the suggested command to remove the old key.
Key Takeaways
To summarize what you’ve learned:
- Networking: IGLOS automatically configures network access via DHCP.
- IP Discovery: Use
ip address, your router’s interface, or network scanning tools to find your device. - SSH Access: Remote management via SSH enables network-based workflows for development and exploration.
- Security Reminder: SSH is for development only; production systems need hardening (covered in later parts).
Troubleshooting
SSH Connection Refused
Problem: ssh: connect to host 192.168.1.42 port 22: Connection refused
Solutions:
- Verify the device is connected to the same network as your PC and has an IP address.
- Ensure you’re using the correct IP address and the Raspberry Pi is powered on.
What’s Next?
Continue to the next step in this tutorial.
Step 3: Software Updates with IGLOS
In that step, you’ll learn how to:
- Understand and use the built-in software update mechanism (swupdate)
- Perform your first over-the-network software update
Follow our LinkedIn channel to get informed when the next parts are online!