Sysop Registry


FlexNet application documentation
ETHEREMU - Ethernet packet driver emulator


    Ethernet packet driver emulator.

    This driver emulates an Ethernet packet driver on one side, and is a PC/FlexNet application on the other side. It enables standard TCP/IP applications such as NCSA Telnet to be used over radio. The driver emulates Ethernet-ARP and supports AX25-ARP.

    Command line parameters:

      etheremu -i=<int> -m=<mycall>

      -h, -? description of the parameters
      -i interrupt nummer
      -m mycall


      First, PC/FlexNet and its L1 drivers must be installed and started. Then, ETHEREMU may be loaded. ETHEREMU needs the callsign and SSID that should be used for TCP/IP, and the interrupt number where it should install the packet driver interface. The interrupt must not be used already by another program! The callsign and SSID must not be used by another PC/FlexNet application on the same PC/FlexNet AX25 stack.

      Example: ETHEREMU -i=0x70 -m=HB9JNX-11

      Now the paths to the routers must be configured. This can be done with EEMUCFG. There may be 16 paths (at this time).

      An example: We want to enter the path to HB9W-11, which can be found over HB9W and has the IP address All amateur ip addresses (44.x.x.x) shall be routed to HB9W-11.

      EEMUCFG add vc HB9W-11 HB9W

      The vc tells ETHEREMU to use virtual circuits, i.e. it connects first to the router before it sends data. This is the recommended setting. The alternative would be dg. In this case ETHEREMU uses Unnumbered Info (UI) frames. The hexadecimal number after the slash ("/") specifies the netmask. Only those address bits whose corresponding bit in the netmask is one are compared. For convenience the configuration should be done with a batch file, since ETHEREMU does not remember the configuration.

      EEMUCFG and EEMUCFG STAT shows the table of the paths. The proper IP address cannot be set directly. It is needed for AX25 ARP replies and it is set the first time the IP application sends an Ethernet-ARP request. This IP address is thus taken from the IP application.

      EMUCFG STAT shows the time the table entry was last used and it shows the round trip time of the route (Frack, in 100ms units). A "--" means that it is either a "datagram" path or that there is currently no circuit. Curcuits are disconnected if they are not used for 15 minutes.

    Configuring the application

      Two things must be tuned in the application:

    • The MTU (Maximum Transmission Unit) must be set to 250. This is the maximum packet size the application sends. Ethernet may transport up to 1508 bytes, while virtually all AX25 implementations are limited to 256 bytes. Packets bigger than 256 bytes are thrown away by ETHEREMU without notice!
    • All outgoing packets must be configured to go through one of the configured routers. It is highly application dependent how this can be accomplished.

    Tested applications

      KA9Q derivatives

      They work flawlessly.

      NCSA Telnet

      It works. Upon startup, the message "network jammed" appiers. This is due to the slowness of AX25 compared to Ethernet. ETHEREMU tries to brake the application by returning an error message when its transmission queue is full. This message can be ignored.

    page created by Thomas Sailer <sailer@ife.ee.ethz.ch>

pages created by Gerald Schreiber, dl9fck, last updated: March 2001