Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
73 changes: 73 additions & 0 deletions .github/workflows/builds.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2898,6 +2898,79 @@ jobs:
# DPDK configuration checks
- run: ./qa/live/dpdk/dpdk-testsuite.sh

ubuntu-xdp:
name: Ubuntu (xdp)
runs-on: ubuntu-latest
needs: [prepare-deps]
steps:
# Cache Rust stuff.
- name: Cache cargo registry
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57
with:
path: ~/.cargo/registry
key: cargo-registry

- name: Determine number of CPUs
run: echo CPUS=$(nproc --all) >> $GITHUB_ENV

- run: sudo apt update
- run: |
sudo apt -y install \
autoconf \
automake \
build-essential \
cmake \
curl \
git \
hwloc \
libhwloc-dev \
jq \
make \
libpcre3 \
libpcre3-dbg \
libpcre3-dev \
libpcre2-dev \
libtool \
libpcap-dev \
libnet1-dev \
libyaml-0-2 \
libyaml-dev \
libcap-ng-dev \
libcap-ng0 \
libjansson-dev \
libjansson4 \
libnuma-dev \
liblz4-dev \
libssl-dev \
pkg-config \
python3 \
python3-yaml \
tcpreplay \
zlib1g \
zlib1g-dev \
clang \
libxdp-dev
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8
- run: git config --global --add safe.directory /__w/suricata/suricata
- uses: actions/download-artifact@018cc2cf5baa6db3ef3c5f8a56943fffe632ef53
with:
name: prep
path: prep
- name: Install Rust
run: curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain $(grep rust-version rust/Cargo.toml.in|sed 's/\"//g'|awk '{print $3}') -y
- run: echo "$HOME/.cargo/bin" >> $GITHUB_PATH
- uses: ./.github/actions/install-cbindgen
- run: tar xf prep/suricata-verify.tar.gz
- run: ./autogen.sh
- run: CFLAGS="${DEFAULT_CFLAGS} -DAFPACKET_TEST_REPLAY" ./configure --enable-warnings --enable-unittests --enable-ebpf --enable-ebpf-build
- run: make -j ${{ env.CPUS }}
- run: make check
- name: Running suricata-verify
run: python3 ./suricata-verify/run.py -q --debug-failed
- run: ulimit -a
- name: Running suricata-verify live tests
run: sudo python3 ./suricata-verify/run.py --live --debug-failed

debian-12:
name: Debian 12 (xdp)
runs-on: ubuntu-latest
Expand Down
24 changes: 24 additions & 0 deletions doc/userguide/configuration/suricata-yaml.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3095,6 +3095,30 @@ default.
Using this default setting, flows will be associated only if the compared packet
headers are encapsulated in the same number of headers.

Tunnels
~~~~~~~

If your packets sources are multiple tunnels encapsulating the traffic,
you can configure the ``decoder.tunnels`` section to assign a tunnel
identifier to each of these tunnels.

These tunnel identifiers are used in flow hashing to be able to distinguish
the same-looking flow (same 5-tuple) from different tunnels, meaning it
is in fact a different subnetwork (like a VLAN identifier).

This section is a list of tunnels with the following parameters:
::

- id: 1
type: erspan2 # or vxlan
src: 192.168.1.1
dst: 192.168.1.3
session: 123 # erspan span id or vxlan vni

It is also recommended to define ``decoder.tunnels-ifaces`` list of interfaces
receiving tunneled traffic. The traffic received on these interfaces that do
not belong to a defined tunnel will be skipped.

Advanced Options
----------------

Expand Down
Loading
Loading