Networking
General
Important
The recommended method to configure network interfaces in SIINEOS (except for USB networking) is to implement InCore applications utilizing the NetworkConfiguration and any of the NetworkInterface-based objects. The InCore objects allow an easy, dynamic and high-level network configuration without any command line interaction.
General network status information such as IP addresses are available through the networkctl
command:
root@hub-gm:~# networkctl
IDX LINK TYPE OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 can0 n/a off unmanaged
3 eth0 ether routable configured
4 eth1 ether no-carrier configuring
5 usb0 gadget routable configured
5 links listed.
root@hub-gm:~# networkctl status
* State: routable
Address: 192.168.2.54 on eth0
192.168.123.1 on usb0
169.254.39.21 on usb0
fe80::3ad2:69ff:fe2d:1d5 on eth0
fe80::7450:1dff:fe7d:59f on usb0
Gateway: 192.168.2.1 on eth0
DNS: 192.168.2.1
NTP: 192.168.2.1
root@hub-gm:~# networkctl status eth0
* 3: eth0
Link File: n/a
Network File: /etc/systemd/network/eth0.network
Type: ether
State: routable (configured)
HW Address: 38:d2:69:2d:01:d5 (Texas Instruments)
Address: 192.168.2.54
fe80::3ad2:69ff:fe2d:1d5
Gateway: 192.168.2.1
DNS: 192.168.2.1
NTP: 192.168.2.1
For diagnostic purposes detailed information of the current network configuration can be examined through certain invocations of the ip
command:
Link status:
ip link
(shortcut:ip l
)IP addresses:
ip address
(shortcut:ip a
)Routing table:
ip route
(shortcut:ip r
)
USB
When connecting a SIINEOS-based device to a computer via USB, a virtual USB network adaptor is created on the computer. It allows communicating with the device based on TCP/IP connections. While your computer is assigned a random IP address in the USB network subnet, the SIINEOS device is always accessible via the IP address 192.168.123.1
. You can verify the USB network functionality by running ping 192.168.123.1
in a command line window of your computer’s operating system. The output looks like
$ ping 192.168.123.1
PING 192.168.123.1 (192.168.123.1) 56(84) bytes of data.
64 bytes from 192.168.123.1: icmp_seq=1 ttl=64 time=0.418 ms
64 bytes from 192.168.123.1: icmp_seq=2 ttl=64 time=0.558 ms
64 bytes from 192.168.123.1: icmp_seq=3 ttl=64 time=0.593 ms
64 bytes from 192.168.123.1: icmp_seq=4 ttl=64 time=0.558 ms
--- 192.168.123.1 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3058ms
rtt min/avg/max/mdev = 0.418/0.531/0.593/0.072 ms
After starting the SSH service you can use the IP address to log in via SSH or transfer files via WinSCP or scp
. When developing InCore applications providing a web interface, the web interface is accessible through the USB IP address.
Ethernet
Both Ethernet interfaces (eth0
/eth1
) are configured through DHCP per default, i.e. they request an IP address from the network which they are connected to. You can obtain the assigned IP addresses using commands mentioned in section General.
If your network does not distribute IP addresses via DHCP, the Ethernet interfaces have to be configured manually. You can use the ip
command to change the configuration temporarily. Alternatively modify /etc/systemd/network/eth0.network
or /etc/systemd/network/eth1.network
in a SystemdNetworkd-compatible manner and restart the networking service via systemctl restart systemd-networkd
. Please note that changes to these files are not persistent and will be lost after rebooting. Instead implement an InCore applications which performs the network configuration as mentioned in section General.
Wireless
The optional wireless network interface (wlan0
) has to be configured by InCore applications using the WirelessNetworkInterface object.
For troubleshooting purposes you can examine wireless security related issues (i.e. WPA encryption issues) by running journalctl -u wpa_supplicant
. The assigned IP address(es) can be viewed via ip address show wlan0
.
Broadband/LTE
The optional broadband/LTE network interface (wwan0
) has to be configured by InCore applications using the MobileNetworkInterface object.
For troubleshooting purposes you can examine modem-related issues by running journalctl -u ModemManager
. The assigned IP address(es) can be viewed via ip address show wwan0
.