Ouroboros Tutorial 04: Difference between revisions
No edit summary |
No edit summary |
||
Line 25: | Line 25: | ||
Save these configurations as a file on each machine - we chose to save them at /etc/ouroboros/tut04.conf - and start an IRMd on each machine with that config file. | Save these configurations as a file on each machine - we chose to save them at /etc/ouroboros/tut04.conf - and start an IRMd on each machine with that config file. | ||
The IRMd will log the use of the configuration file, create the service name for oping-server and then find the configuration for the IPCP: | |||
dstaesse@raspberrypi:~ $ sudo irmd --stdout --config /etc/ouroboros/tut04.conf | dstaesse@raspberrypi:~ $ sudo irmd --stdout --config /etc/ouroboros/tut04.conf | ||
Line 33: | Line 34: | ||
==28267== irmd(II): Bound program /usr/bin/oping to name oping-server. | ==28267== irmd(II): Bound program /usr/bin/oping to name oping-server. | ||
==28267== irmd/configuration(DB): Found IPCP wifi1 in configuration file. | ==28267== irmd/configuration(DB): Found IPCP wifi1 in configuration file. | ||
The IRMd then bootstraps the IPCP. The ipcpd-eth-* will detect the device MTU (which is usually 1500 bytes, but can be lower on virtual machine guests, or higher, for instance the loopback interface). The ipcpd-eth-* Layer MTU will be capped to the device MTU, or to [[Ouroboros Build Parameters|IPCP_ETH_LO_MTU]] when using the loopback adapter. | |||
==28267== irmd(II): Created IPCP 28279. | ==28267== irmd(II): Created IPCP 28279. | ||
==28267== irmd/configuration(DB): No hash specified, using default. | ==28267== irmd/configuration(DB): No hash specified, using default. | ||
Line 42: | Line 46: | ||
==28279== ipcpd/ipcp(II): Finished bootstrapping: 0. | ==28279== ipcpd/ipcp(II): Finished bootstrapping: 0. | ||
==28267== irmd(II): Bootstrapped IPCP 28279 in layer wifi-network. | ==28267== irmd(II): Bootstrapped IPCP 28279 in layer wifi-network. | ||
==28267== irmd/configuration(DB): Registering oping-server in 28279 | ==28267== irmd/configuration(DB): Registering oping-server in 28279 | ||
==28267== irmd(WW): Name oping-server already exists. | ==28267== irmd(WW): Name oping-server already exists. |
Revision as of 09:38, 12 November 2023
In this tutorial, we show how to run oping between two machines connected to the same Ethernet LAN.
For the second machine, we use a Raspberry Pi Model 4B+ (ARM64, 32-bit Raspbian 11) connected to the same WiFi LAN as my desktop (Intel 13900KF, ArchLinux).
We chose the Ethernet DIX option, because our LLC packets sometimes get dropped on wireless LANs (protocol ossification at work). To use the LLC Ethernet 0-Layer, all that is needed is to change eth-dix to eth-llc in (both) the configuration files in this tutorial (left to the reader).
We run the server on the raspberry pi. The O7s config file for the Raspberry Pi connects to the wlan0 device and registers the "oping-server" application with the Ethernet 0-Layer:
[name."oping-server"] prog=["/usr/bin/oping"] args=["-l"]
[eth-dix.wifi1] bootstrap="wifi-network" dev="wlan0" reg=["oping-server"]
The configuration for the desktop machine (O7s client) is quite simple:
[eth-dix.wifi1] bootstrap="wifi-network" dev="wlan0"
Save these configurations as a file on each machine - we chose to save them at /etc/ouroboros/tut04.conf - and start an IRMd on each machine with that config file. The IRMd will log the use of the configuration file, create the service name for oping-server and then find the configuration for the IPCP:
dstaesse@raspberrypi:~ $ sudo irmd --stdout --config /etc/ouroboros/tut04.conf ==28267== irmd(II): Ouroboros IPC Resource Manager daemon started... ==28267== irmd/configuration(II): Reading configuration from file /etc/ouroboros/tut04.conf ==28267== irmd/configuration(DB): Found service name oping-server in configuration file. ==28267== irmd(II): Created new name: oping-server. ==28267== irmd(II): Bound program /usr/bin/oping to name oping-server. ==28267== irmd/configuration(DB): Found IPCP wifi1 in configuration file.
The IRMd then bootstraps the IPCP. The ipcpd-eth-* will detect the device MTU (which is usually 1500 bytes, but can be lower on virtual machine guests, or higher, for instance the loopback interface). The ipcpd-eth-* Layer MTU will be capped to the device MTU, or to IPCP_ETH_LO_MTU when using the loopback adapter.
==28267== irmd(II): Created IPCP 28279. ==28267== irmd/configuration(DB): No hash specified, using default. ==28279== ipcpd/ipcp(II): Bootstrapping... ==28279== ipcpd/eth-dix(DB): Device MTU is 1500. ==28279== ipcpd/eth-dix(DB): Layer MTU is 1500. ==28279== ipcpd/eth-dix(II): Using raw socket device. ==28279== ipcpd/eth-dix(DB): Bootstrapped IPCP over DIX Ethernet with pid 28279 and Ethertype 0xA000. ==28279== ipcpd/ipcp(II): Finished bootstrapping: 0. ==28267== irmd(II): Bootstrapped IPCP 28279 in layer wifi-network.
==28267== irmd/configuration(DB): Registering oping-server in 28279 ==28267== irmd(WW): Name oping-server already exists. ==28279== ipcpd/ipcp(II): Registering f6c93ff2... ==28279== ipcpd/ipcp(II): Finished registering f6c93ff2 : 0. ==28267== irmd(II): Registered oping-server with IPCP 28279 as f6c93ff2.