lsusb
сам по себе может дать хорошие результаты. Для компактного вывода я использую lsusb -t
, где -t
показывает устройства в виде дерева; этот формат также сообщает драйвер.
Пример вывода:
$ lsusb -t
/: Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 5000M
/: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/2p, 480M
/: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/3p, 480M
|__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
...
Если драйвер не используется, строка будет выглядеть следующим образом (устройство в моем примере - это камера, для которой я удалил драйвер из ядра):
|__ Port 6: Dev 4, If 1, Class=Video, Driver=, 480M
/sbin/iptables -t nat -A PREROUTING -p tcp --dport 80 -d 10.13.235.42 -j DNAT --to-destination 209.208.27.224:27279
Работает с таблицей nat
.
Применяет правило к таблице PREROUTING
, так что решения, принятые в этом правиле, могут повлиять на то, какое решение по маршрутизации будет принято.
Строго для соединений с портом 80 на 10.13.235.42
, который предположительно является одним из IP-адресов этой машины.
Установите новый пункт назначения в качестве порта 27279 на 209.208.27.224
. Если 10.13.235.42
является IP-адресом этой машины, то это необходимо для того, чтобы ядро не думало, что это конечный пункт назначения для трафика. На данный момент IP-адрес назначения в входящем пакете был изменен.
-j DNAT
просто означает, что мы используем NAT для назначения, а не скрываем источник соединения от места назначения (которым был бы SNAT
).
/sbin/iptables -t nat -A POSTROUTING -p tcp --dport 27279 -j MASQUERADE
Работает с таблицей nat
после того, как было принято решение о маршрутизации.
Совпадает с любыми tcp-пакетами, предназначенными для порта 27279
на любой IP-адрес и с него. Полагаю, идея здесь в том, что нам не нужно быть слишком конкретными, так как это необычный номер порта.
Говорит кернелу на MASQUERADE
, что означает, что пакеты модифицируются, чтобы затемнить либо источник, либо пункт назначения. Это позволяет получить ответ в том же виде, в каком он был получен.