Как было предложено в комментариях, включение модуля "CDC -ACM" в ядро решило проблему. Модуль реле распознается как «ttyACM0» и работает нормально.
Рядом с trickle
,возможный хакерский способ, который также имеет то преимущество, что дает некоторое текущее состояние «скорости» дросселированного соединения и позволяет вам совместно использовать дросселированное соединение между независимыми приложениями:
ssh -D 1080 -N -o ProxyCommand='
pv -B8K -trabcN OUT -L2K |
socat - tcp:%h:%p,rcvbuf=8K |
pv -B8K -trabcN IN -L30K' localhost
Чтобы запустить сервер SOCKS5, который регулируется из-за прокси-команды, которая замедляется pv
ограничением скорости (-L
), здесь регулирование вывода и ввода осуществляется с разной скоростью.
И затем соксифицируйте вашу команду с помощью tsocks
, например, настроенной с ~/.tsocks.conf
, например:
server = 127.0.0.1
server_port = 1080
server_type = 5
Загрузка какого-то образа iso безtsocks
:
$ wget -O /dev/null http://releases.ubuntu.com/18.10/ubuntu-18.10-live-server-amd64.iso
/dev/null 2%[ ] 19.60M 1.99MB/s eta 6m 47s
тот же соксифицированный:
$ tsocks wget -O /dev/null http://releases.ubuntu.com/18.10/ubuntu-18.10-live-server-amd64.iso
/dev/null 0%[ ] 802.40K 29.3KB/s eta 3h 21m
Между тем, вывод pv
выглядит как:
OUT: 3.65KiB 0:00:32 [0.00 B/s] [ 116 B/s]
IN: 960KiB 0:00:32 [30.5KiB/s] [30.0KiB/s]
(показывает как текущую скорость (-r
), так и среднюю (-a
)).
tsocks
или другие команды, определяющие носки, внедряют код в исполняемые файлы (, используя $LD_PRELOAD
), чтобы захватить их сетевые функции, чтобы они проходили через сервер SOCKS. Это не будет работать для команд, которые статически связаны или имеют setuid/setgid...
Также обратите внимание, что tsocks
работает только с TCP. Я считаю, что SOCKS-сервер ssh также работает только с TCP, поэтому, даже если вы переключитесь на другой socksifier, такой как dante
, вы все равно не сможете таким образом регулировать трафик UDP. Вы можете попытаться разработать аналогичный подход, используя сервер dante SOCKS вместо ssh
.
редактировать . Когда дело доходит до python3, я обнаружил, что ни trickle
, ни tsocks
не могут отвлечь сетевое тестирование python3 (с помощьюyoutube-dl
). Однако dante
socksify
, кажется, работает. Чтобы использовать его, создайте ~/.dante.conf
, например:
route {
from: 0.0.0.0/0 to: 0.0.0.0/0 via: 127.0.0.1 port = 1080
}
И назовите свое приложение как:
SOCKS_CONF=~/.dante.conf socksify youtube-dl https://...