In the examples below it is supposed that there are no connections on hosts before examples execution, the user has rights to create connections and hosts can reach each other through the LAN they are connected to.

Example 1: Many-to-one raw connection

Classical client-server architecture

Let host A have a real serial port (/dev/ttyS0) and its IP address be 192.168.0.1 .
Other hosts (B1 and B2 in this example) can connect to it using SEC via a virtual port.

Execute these commands on host A in a console (or make it a shell script and run it):

evesecli add --real /dev/ttyS0 server --local 5000
evesecli start /dev/ttyS0

Execute on hosts B1 and B2:

evesecli add --virtual /tmp/virt0 client --remote 192.168.0.1:5000 
evesecli start /tmp/virt0

Example 2: Encrypted Telnet connection with authorization

The most secure Telnet connection

In case of Telnet connection, only one client can connect to a server.

As in the example above, host A with IP 192.168.0.1 is a server, which shares its real serial port /dev/ttyS0. Host B is a client emulating a serial port.

Unfortunately, native Linux virtual serial ports do not support many real serial ports’ features like signal lines, words with length less than 8 bits (data bits), strict baud rate emulation, etc.
We are working on this issue in order to resolve it ASAP.

In this example, the authorization password is ‘secret’.
In real life, it is recommended to use passwords that are more complicated.

Execute on host A:

evesecli add -r /dev/ttyS0 server -l 5000 
evesecli set /dev/ttyS0 server --encrypt --password 'secret' telnet --enable
evesecli start /dev/ttyS0

Execute on host B:

evesecli add -v /tmp/virt0 client -r 192.168.0.1:5000 -e -p secret telnet -e
evesecli start /tmp/virt0

Example 3: Multicast messages

UDP usage

In this example there are no servers and clients – all hosts are identical.

Note that under certain circumstances hosts can receive their own messages.

Execute on any host:

evesecli add -v /tmp/virt0 udp -l 5000 -r 192.168.0.2:5000
evesecli start /tmp/virt0