Я пытаюсь выяснить, как отслеживать пропускную способность, поступающую из контейнера Docker.
Обычно я использую --uid-owner
как метку, чтобы отслеживать использование полосы пропускания для данного пользователя. Тем не менее, даже когда я запускаю все процессы, поскольку пользователь внутри контейнера Docker --uid-owner
не работает. Вместо того, чтобы использовать --uid-owner
, я попытался просто отслеживать все пакеты, поступающие с виртуального устройства Ethernet, которое создает Docker.
Это, однако, закончилось тем, что ничего не делало: независимо от того, что я пытаюсь, пакеты не перехватываются.
Из чистого отчаяния я попытался просто поставить правила во всех цепях, но ничего не дало.
Chain PREROUTING (policy ACCEPT 3041 packets, 7849454 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 MARK tcp -- veth5a36 any anywhere anywhere MARK set 0x1
Chain INPUT (policy ACCEPT 273 packets, 23305 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 MARK tcp -- veth5a36 any anywhere anywhere MARK set 0x1
Chain FORWARD (policy ACCEPT 2750 packets, 7821109 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 MARK tcp -- any veth5a36 anywhere anywhere MARK set 0x1
2 0 0 MARK tcp -- veth5a36 any anywhere anywhere MARK set 0x1
3 0 0 all -- veth5a36 eth0 anywhere anywhere mark match 0x1
Chain OUTPUT (policy ACCEPT 293 packets, 80020 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 MARK tcp -- any veth5a36 anywhere anywhere MARK set 0x1
Chain POSTROUTING (policy ACCEPT 3043 packets, 7901129 bytes)
num pkts bytes target prot opt in out source destination
1 0 0 MARK tcp -- any veth5a36 anywhere anywhere MARK set 0x1
Кто-нибудь может сказать мне, как успешно пометить пакеты из контейнера Docker? Желательно использовать, --uid-owner
но я возьму все, что на этом этапе :)