Назад | Перейти на главную страницу

tc - Моделирование сетевой задержки внутренних портов (LAN)

Я делаю моделирование сети на виртуальной машине Ubuntu.

Я пытаюсь добавить некоторую задержку ко всем пакетам, отправляемым на определенные порты и от них, не затрагивая весь адаптер. Трафик никогда не покидает локальный компьютер, и у меня возникают проблемы с использованием netem по локальной сети и входящего трафика. Я пробовал этот код среди прочего кода, который, однако, по какой-то причине не работает (он работает, если сервер находится в WAN):

sudo tc qdisc add dev enp0s3 root handle 1: prio //creates classes 1:1, 1:2, 1:3
sudo tc qdisc add dev enp0s3 parent 1:3 handle 30: netem delay 5s //adds delay 5s class 1:3
sudo tc filter add dev enp0s3 protocol ip parent 1:0 u32 match ip sport 3333 0xffff flowid 1:3 //only adds delay to source port 3333

Я тестирую это безуспешно, поэтому я попытался разместить сервер Flask на указанном порту, в данном случае 3333, и посмотреть скорость wget при загрузке веб-страницы.

Однако это происходит мгновенно, поэтому задержка не добавляется. Я также попытался установить порт dport, но ничего не изменилось, а также использовал IFB. Я делаю что-то неправильно? Кто-нибудь знает альтератив? Раньше я использовал dummynet с каналами, но он недоступен для Ubuntu.