Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
tcconfig — Un envoltorio del comando tc. Facilita la configuración del control de tráfico de ancho de banda/latencia/pérdida de paquetes/corrupción de paquetes/etc. a una interfaz de red/contenedor Docker(veth). | Kitploit
Herramientas/GitHubGitHub/thombashi/tcconfig
Utilidades de Propósito GeneralSeguridad de RedesIngeniería del Caos
GitHubthombashi/tcconfig

tcconfig

Un envoltorio del comando tc. Facilita la configuración del control de tráfico de ancho de banda/latencia/pérdida de paquetes/corrupción de paquetes/etc. a una interfaz de red/contenedor Docker(veth).

Ver RepositorioSitio web
8539024hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

.. contents:: tcconfig :backlinks: top :depth: 2

Resumen

tcconfig <https://github.com/thombashi/tcconfig>__ es un envoltorio del comando tc. Facilita la configuración del control de tráfico de ancho de banda/latencia/pérdida de paquetes/corrupción de paquetes/etc. en una interfaz de red/contenedor Docker (veth).

|PyPI pkg ver| |Supported Python ver| |CI status| |CodeQL|

.. |PyPI pkg ver| image:: https://badge.fury.io/py/tcconfig.svg :target: https://badge.fury.io/py/tcconfig :alt: PyPI package version

.. |Supported Python ver| image:: https://img.shields.io/pypi/pyversions/tcconfig.svg :target: https://pypi.org/project/tcconfig :alt: Supported Python versions

.. |CI status| image:: https://github.com/thombashi/tcconfig/actions/workflows/ci.yml/badge.svg :target: https://github.com/thombashi/tcconfig/actions/workflows/ci.yml :alt: Test CI status

.. |CodeQL| image:: https://github.com/thombashi/tcconfig/actions/workflows/build_and_release.yml/badge.svg :target: https://github.com/thombashi/tcconfig/actions/workflows/build_and_release.yml :alt: Build CI status

Control de tráfico

Configurar reglas de modelado de tráfico ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Fácil de aplicar reglas de modelado de tráfico a redes específicas:

  • Paquetes salientes/entrantes
  • Dirección IP/red de origen/destino (IPv4/IPv6)
  • Puertos de origen/destino

Parámetros disponibles ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Se pueden establecer los siguientes parámetros en las interfaces de red:

  • Tasa de ancho de banda de red [G/M/K bps]
  • Latencia de red [microsegundos/milisegundos/segundos/minutos]
  • Tasa de pérdida de paquetes [%]
  • Tasa de corrupción de paquetes [%]
  • Tasa de duplicación de paquetes [%]
  • Tasa de reordenamiento de paquetes [%]
  • Límite de paquetes [CONTEO]

Objetivos ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  • Interfaces de red: p. ej. eth0
  • Contenedor Docker (veth correspondiente a un contenedor)

.. image:: docs/gif/tcset_example.gif

Uso

Establecer control de tráfico (comando tcset)

tcset es un comando para agregar una regla de control de tráfico a una interfaz de red (dispositivo).

p. ej. Establecer un límite de ancho de banda de hasta 100Kbps ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console

# tcset eth0 --rate 100Kbps

p. ej. Establecer latencia de red ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Puede usar unidades de tiempo (como us/sec/min/etc.) para designar el tiempo de retardo.

Establecer 100 milisegundos de latencia de red ''''''''''''''''''''''''''''''''''''''''''''''''''' .. code-block:: console

# tcset eth0 --delay 100ms

Establecer 10 segundos de latencia de red ''''''''''''''''''''''''''''''''''''''''''''''''''' .. code-block:: console

# tcset eth0 --delay 10sec

Establecer 0.5 minutos (30 segundos) de latencia de red ''''''''''''''''''''''''''''''''''''''''''''''''''' .. code-block:: console

# tcset eth0 --delay 0.5min

También puede usar las siguientes unidades de tiempo:

.. table::

+------------+----------------------------------------------------------+
|   Unidad   |             Especificadores disponibles (str)             |
+============+==========================================================+
|horas       |``h``/``hour``/``hours``                                  |
+------------+----------------------------------------------------------+
|minutos     |``m``/``min``/``mins``/``minute``/``minutes``             |
+------------+----------------------------------------------------------+
|segundos    |``s``/``sec``/``secs``/``second``/``seconds``             |
+------------+----------------------------------------------------------+
|milisegundos|``ms``/``msec``/``msecs``/``millisecond``/``milliseconds``|
+------------+----------------------------------------------------------+
|microsegundos|``us``/``usec``/``usecs``/``microsecond``/``microseconds``|
+------------+----------------------------------------------------------+

p. ej. Establecer 0.1% de pérdida de paquetes ^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console

# tcset eth0 --loss 0.1%

p. ej. Todas las configuraciones anteriores a la vez ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console

# tcset eth0 --rate 100Kbps --delay 100ms --loss 0.1%

p. ej. Especificar la dirección IP del control de tráfico ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console

# tcset eth0 --delay 100ms --network 192.168.0.10

p. ej. Especificar la red IP y el puerto del control de tráfico ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. code-block:: console

# tcset eth0 --delay 100ms --network 192.168.0.0/24 --port 80

Establecer control de tráfico a un contenedor Docker ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Ejecute tcconfig con la opción --docker en un host Docker:

.. code-block:: console

# tcset <nombre o ID del contenedor> --docker ...

Puede usar las opciones --src-container/--dst-container para especificar el contenedor de origen/destino.

Establecer control de tráfico dentro de un contenedor Docker ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Debe ejecutar un contenedor con la opción --cap-add NET_ADMIN si desea establecer una regla tc dentro de un contenedor:

.. code-block:: console

docker run -d --cap-add NET_ADMIN -t <imagen Docker>

Una imagen de contenedor que incluye tcconfig está disponible en https://hub.docker.com/r/thombashi/tcconfig/

Eliminar control de tráfico (comando tcdel)

tcdel es un comando para eliminar reglas de modelado de tráfico de una interfaz de red (dispositivo).

p. ej. Eliminar control de tráfico de eth0 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Puede eliminar todas las reglas de modelado para eth0 con la opción -a/--all:

.. code-block:: console

# tcdel eth0 --all

Mostrar configuraciones de control de tráfico (comando tcshow)

tcshow es un comando para mostrar la configuración actual de control de tráfico de una o más interfaces de red.

Ejemplo ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code-block:: console

# tcset eth0 --delay 10ms --delay-distro 2  --loss 0.01% --rate 0.25Mbps --network 192.168.0.10 --port 8080
# tcset eth0 --delay 1ms --loss 0.02% --rate 500Kbps --direction incoming
# tcshow eth0
{
    "eth0": {
        "outgoing": {
            "dst-network=192.168.0.10/32, dst-port=8080, protocol=ip": {
                "filter_id": "800::800",
                "delay": "10.0ms",
                "delay-distro": "2.0ms",
                "loss": "0.01%",
                "rate": "250Kbps"
            }
        },
        "incoming": {
            "protocol=ip": {
                "filter_id": "800::800",
                "delay": "1.0ms",
                "loss": "0.02%",
                "rate": "500Kbps"
            }
        }
    }
}

Para más información

Hay más ejemplos disponibles en https://tcconfig.rtfd.io/en/latest/pages/usage/index.html

Instalación

Instalación: pip

tcconfig se puede instalar desde PyPI <https://pypi.python.org/pypi>__ mediante el comando pip <https://pip.pypa.io/en/stable/installing/>__ (gestor de paquetes de Python).

.. code:: console

sudo pip install tcconfig

Instalación: dpkg (Debian/Ubuntu)

.. code:: console

curl -sSL https://raw.githubusercontent.com/thombashi/tcconfig/master/scripts/installer.sh | sudo bash
Descargar herramienta