/ddos_protection_task

Server/Client library implementing udp protocol to protect server againts ddos attack(syn-flood)

Primary LanguageGo

Tcp-server protected from syn-flood(ddos) attacks

Basic idea was taken from the publication

Glossary

DDOS

A DDoS attack, which stands for “distributed denial-of-service” is a malicious attempt to disrupt the normal traffic of a targeted server, service or network by overwhelming the target or its surrounding infrastructure with a flood of Internet traffic.

These attempt to use up all the available connections to infrastructure devices such as load-balancers, firewalls and application servers. Even devices capable of maintaining state on millions of connections can be taken down by these attacks.

Run in docker

Server

Server build

docker build -f ./docker/server/Dockerfile -t 'server:02022023' .

Server run

docker run  --privileged --net host server:02022023

it's impossible to run the server using bpf without the flag issue

Client

Client build

docker build -f ./docker/client/Dockerfile -t 'client:02022023' .

Client run

docker run --net host --env CHALLENGE_ADDRESS=localhost:1053 --env DEST=localhost:5051 client:02022023