Skip to main content

Linux network corruption

Linux network corruption injects chaos to disrupt network connectivity on a Linux machine by corrupting the network requests.

Linux network corruption

Use cases

  • Induces network corruption on the target Linux machines.
  • Simulates network corruption by corrupting requests of the machine.
note
  • This fault can be executed on Ubuntu 16 or higher, Debian 10 or higher, CentOS 7 or higher, RHEL 7 or higher, Fedora 30 or higher, and openSUSE LEAP 15.4 or higher.
  • The linux-chaos-infrastructure systemd service should be in an active state, and the infrastructure should be in CONNECTED state.

Fault permissions

The fault uses the root Linux user and root user group.

Fault tunables

Mandatory tunables

Tunable Description Notes
networkInterfaces Network interfaces to target as comma separated values. For example: eth0,ens192

Optional tunables

Tunable Description Notes
destinationHosts List of the target host names or keywords. For example. google.com,litmuschaos.io If neither destinationHosts nor destinationIPs is provided, all host names/domains are targeted
destinationIPs List of the target IPs. For example: 1.1.1.1,8.8.8.8 If neither destinationHosts nor destinationIPs is provided, all host names/domains are targeted
packetCorruptionPercentage Percentage of packets to corrupt. For example: 50 Default: 100%
duration Duration through which chaos is injected into the target resource (in seconds). Default: 30s
rampTime Period to wait before and after injecting chaos (in seconds). Default: 0s

Destination hosts

The destinationHosts input variable subjects the comma-separated target host names to chaos.

The following YAML snippet illustrates the use of this environment variable:

apiVersion: litmuchaos.io/v1alpha1
kind: LinuxFault
metadata:
name: linux-network-corruption
labels:
name: network-corruption
spec:
networkChaos/inputs:
destinationHosts: 'google.com'
networkInterfaces: "eth0"

Destination IPs

The destinationIPs input variable subjects the comma-separated names of target IPs to chaos.

The following YAML snippet illustrates the use of this environment variable:

apiVersion: litmuchaos.io/v1alpha1
kind: LinuxFault
metadata:
name: linux-network-corruption
labels:
name: network-corruption
spec:
networkChaos/inputs:
destinationIPs: '1.1.1.1'
networkInterfaces: "eth0"

Packet corruption percentage

The packetCorruptionPercentage input variable corrupts a specific percentage of data packets.

The following YAML snippet illustrates the use of this environment variable:

apiVersion: litmuchaos.io/v1alpha1
kind: LinuxFault
metadata:
name: linux-network-corruption
labels:
name: network-corruption
spec:
networkChaos/inputs:
packetCorruptionPercentage: '50'
networkInterfaces: "eth0"