Description

When using CHARON on VMware, additional configuration steps are required to setup networking.

There are settings to be done on 3 levels:

Step-by-step guide

CHARON configuration

In most cases Promiscuous mode is required to be set on VM virtual adapter level. This way networking would allow modern traffic control.

‘Legacy’ packet port mode is an exception, which is kept for compatibility, and was mandatory for configuration with one old version of VMware.However, if Promiscuous mode is not enabled, legacy_mode switch can be used.It is not recommended to use it.

CHARON-VAX

Examples:

set XQA0 legacy_mode=true

set XQB0 legacy_mode=true
...
set EZA0 legacy_mode=true


CHARON-AXP

Examples:

set EWA0 legacy_mode=true
set EWB0 legacy_mode=true
...

VMware ESXi host level

Emulator host level (in the VM appliance)

Windows


Linux

Switch off the offload parameters for chosen network interface using "ethtool" utility.

  • A first step is to find what additional parameters are currently set to "on" on the host network adapter to be used by CHARON. To do that issue:

    # ethtool -k <device>

    ethtool will return the offload parameters and their values

  • Example:

    # ethtool -k eth1
    Offload parameters for eth1:
    rx-checksumming: on
    tx-checksumming: on
    scatter-gather: on
    tcp-segmentation-offload: off
    udp-fragmentation-offload: off
    generic-segmentation-offload: on
    generic-receive-offload: off
    large-receive-offload: off


  • Then use ethtool to switch off all the offload parameters:

    # ethtool -K <device> <parameter> off


  • Example1: command lines

    # ethtool -K eth1 rx off
    # ethtool -K eth1 tx off
    # ethtool -K eth1 sg off
    # ethtool -K eth1 gso off


  • Example2: One command line

    # for F in rx tx sg tso ufo gso gro lro rxvlan txvlan; do  ethtool -K eth1 $F off; done

    or alternatively:

    # ethtool -K eth1 rx off tx off sg off tso off ufo off gso off gro off lro off rxvlan off txvlan off

    (info) Error messages can be ignored
    .

  • For the example above let's create a temporary file containing the commands to be run on system startup, since the offload parameters must be switched off after each reboot
    • Let's suppose that the name of the file is "offload_off_eth1.sh". In this case running it on system startup can be done in the following ways:
      • On Red Hat Linux:

        # cat offload_off_eth1.sh >> /etc/rc.d/rc.local


      • On Fedora Core:

        # echo '#!/usr/bin/bash' > /etc/rc.d/rc.local               (warning) Do not use double quotes, use single ones
        # cat offload_off_eth1.sh >> /etc/rc.d/rc.local
        # chmod 755 /etc/rc.d/rc.local
        # ln -s /usr/lib/systemd/system/rc-local.service /etc/systemd/system/rc-local.service
        # systemctl daemon-reload


Running guests will have to be powered off/on for the new settings to be taken into account


Related articles

Related articles appear here based on the labels you select. Click to edit the macro and add or change labels.