.. _configure-custom-mtu: ==================================== Set custom MTU for Docker containers ==================================== If you have a custom MTU set on the upstream network interface on your host machine, you also need to configure a custom MTU on your Fleio network containers. Otherwise, networking will not work correctly. You can test with the following commands if networking is working correctly from within Fleio ``utils`` container: .. code-block:: bash fleio bash curl https://google.com The curl command above fails when there is a Docker networking error. If network is working correctly, you should see few lines of HTML code, otherwise you get an error. The default networking MTU is 1500. If you're not sure if you have a lower MTU, run this command on the host where you have Fleio installed: .. code-block:: bash ip link show ... 2: eth0: mtu 1400 qdisc mq state UP mode DEFAULT group default qlen 1000 link/ether 00:15:5d:e5:44:77 brd ff:ff:ff:ff:ff:ff ... This will list network interfaces. Your upstream interface may be named ``eth0`` or ``ens3`` etc. The MTU value will be displayed on its line, ``mtu 1400`` in the example above. Ignore Docker related interfaces, names that start with ``veth...`` or ``br-...``. Once you know that you have a lower than standard 1500 MTU on host, you need to configure Docker containers with the same value. Edit file ``/home/fleio/compose/docker-compose.override.yml`` and add the following content .. code-block:: yaml networks: backend: driver: bridge driver_opts: com.docker.network.driver.mtu: 1400 To apply changes, run: .. code-block:: bash fleio recreate The ``curl`` command should succeed now: .. code-block:: bash fleio bash curl https://google.com