unixforum.org
Как узнать какие порты занимает конкретный модем. (E1550)
Ethernet card, Wi-Fi, Bluetooth, IrDA, ADSL-модемы, модемы
8 сообщений • Страница 1 из 1
Voler Сообщения: 498 ОС: Fedora
Как узнать какие порты занимает конкретный модем.
Сообщение Voler » 15.10.2012 09:57
На сервере стоят два модема e1550 как узнать, какой из них какие порты занимает.
Bus 005 Device 002: ID 051d:0002 American Power Conversion Uninterruptible Power Supply Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub [b]Bus 002 Device 004: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem[/b] Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub [b]Bus 001 Device 006: ID 12d1:1001 Huawei Technologies Co., Ltd. E620 USB Modem[/b] Bus 001 Device 004: ID 2001:3c05 D-Link Corp. DUB-E100 Fast Ethernet [asix] Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Интересует какой из них какие порты из /dev/ttyUSB[0-5] занимает?
Спасибо сказали:
Bluetooth Сообщения: 4395 Статус: Блюзовый ОС: Debian Squeeze amd64
Re: Как узнать какие порты занимает конкретный модем.
Сообщение Bluetooth » 15.10.2012 11:37
Они висят на разных шинах. Номера шин не будут меняться при переподключении(в тот же порт) или при перезагрузке компа. Так что методом отключения по одному выяснить какой из них на какой шине, промаркировать. ttyUSB же будут заниматься по мере инициализации. Проведите эксперимент, может быть, постоянно будет первым инициализироваться тот, который на первой шине висит. Тогда проблем не будет(если никто не будет выключать на ходу оба одновременно). Если нет — то имеет смысл парсить dmesg, чтобы выяснять связку физический юсб порт-ttyUSB, и соответсвенно поправлять настройки юзерспейсных программ для работы с ними.
Как определить какой порт у 3g модема /dev/ttyUSB*?
порты /dev/ttyUSB147 и /dev/ttyUSB153 отвечают AT командами, но если указать в конфиге /dev/ttyUSB153 — соединение зависает, а если /dev/ttyUSB147 — то устанавливается соединение.
Мне нужно точно знать какой порт является основным для установки соединения?
Буду рад услышать любые предложения.
code8525
20.05.19 17:11:49 MSK
anonymous
( 20.05.19 17:27:57 MSK )
Мне нужно точно знать какой порт является основным для установки соединения?
Не уверен, возможно да.
Deleted
( 20.05.19 17:32:45 MSK )
Тот, на котором устанавливается соединение.
anonymous
( 20.05.19 17:35:25 MSK )
Если не ошибаюсь, ModemManager сканирует все последовательные порты (отфильтровав те, которые точно не принадлежат модемам) путём отправки неких AT-команд. Видимо универсального простого способа определить правильный порт не существует. Так что смотри исходники ModemManager.
Если у тебя больше одного устройства и тебя интересует как понять какому именно принадлежит очередная пачка /dev/tty* — смотри в /dev/serial/by-path/ или /dev/serial/by-id/.
Deleted
( 20.05.19 17:39:19 MSK )
Последнее исправление: Deleted 20.05.19 17:39:54 MSK (всего исправлений: 1)
Ответ на: комментарий от anonymous 20.05.19 17:35:25 MSK
у модема ZTE аж 4 девайса
«/dev/ttyUSB156», «/dev/ttyUSB158», «/dev/ttyUSB160», «/dev/ttyUSB161»
пробую подключаться с начала 156-не отвечает 158-зависает 160-пишет ошибка 161-не отвечает в этом случаи мы получаем зависший модем.
выключаю и включаю заново, начну с конца 160-установил соединение, ура, мне нужно точно!? 161-не отвечает
code8525
( 20.05.19 17:39:37 MSK ) автор топика
Ответ на: комментарий от Deleted 20.05.19 17:39:19 MSK

АТ команда перезагрузки модема для смены IP
Господа, не подскажете AT команду для перезагрузки модема или другой способ быстрой смены IP адреса модема в сотовой сети ?
Taop
( 20.05.19 17:51:42 MSK )

Скажу из личного опыта: перебором! Обычно из всей паччки работают 2, один хреново, второй нормально. По остальным не законектится. А ещё это всё в современных дистрах можно отдать на откуп network manager и usb_modeswich.
kirill_rrr ★★★★★
( 20.05.19 19:33:46 MSK )

Не могу найти точный ответ, но остались записи, как игрался с тем, что мне помогло в первом приближении:
в конфигурацию udev добавьте строчку:
ACTION=="add", SUBSYSTEM=="tty", ATTRS=="12d1", ATTRS=="1c05", ENV=="00", SYMLINK+="ttyBEELINE", GROUP="dialout", MODE="0660"
где вместо вендора и продукта подставите свои USB ID, а вместо 00 подставите 02, 00, 01.
PS при вышеописанной конфигурации на выбранный девайс будет ссылка /dev/ttyBEELINE
Infra_HDC ★★★★★
( 20.05.19 19:33:49 MSK )
Последнее исправление: Infra_HDC 20.05.19 19:39:33 MSK (всего исправлений: 1)

не знаю что у тебя за модем, а у меня huawei 3372, установил dhcpcd5 и все само конектится при подключении модема без каких либо настроек
amd_amd ★★★★★
( 20.05.19 21:04:42 MSK )
29 сентября 2019 г.
а можно поинтересоваться какие настройки wvdial.conf у билайна? на какой номер звонить?
anonymous
( 29.09.19 01:53:13 MSK )
Ответ на: комментарий от anonymous 29.09.19 01:53:13 MSK
че никто не знает что ли? скиньте конфиг пожалуйста. у меня какой-то неправильный, с первого раза не коннектится
anonymous
( 29.09.19 14:35:33 MSK )

находишь usb interface порта который не только отвечает на AT команды, но ещё и отрабатывает ATD нормально, делаешь udev правило которое по vid/pid/usb interface тебе сделает симлинк типа /dev/ttyMODEM, в wvdial указываешь /dev/ttyMODEM.
Dark_SavanT ★★★★★
( 29.09.19 14:37:39 MSK )
Ответ на: комментарий от anonymous 29.09.19 01:53:13 MSK
[Dialer Defaults] Init1 = at+cgdcont=2,"IP","home.beeline.ru" Modem Type = Analog Modem Phone = *99# ISDN = 0 Username = beeline Init1 = ATZ Password = beeline Modem = /dev/ttyACM0 Baud = 460800
что не так в этом конфиге? вот лог
~ wvdial --> WvDial: Internet dialer version 1.61 --> Initializing modem. --> Sending: ATZ ATZ OK --> Modem initialized. --> Sending: ATDT*99# --> Waiting for carrier. ATDT*99# CONNECT --> Carrier detected. Waiting for prompt. --> Don't know what to do! Starting pppd and hoping for the best. --> Starting pppd at Tue Oct 1 03:42:24 2019 --> Pid of pppd: 1065 --> Using interface ppp0 --> local IP address 10.39.215.125 --> remote IP address 10.39.215.125 --> primary DNS address 10.10.30.150 --> secondary DNS address 10.10.30.146
очень долго коннектится, до строки Don’t know … проходит минута или две даже
Как узнать порт модема
Доброе утро, день, вечер, ночь.
Поможет ли кто-нибудь советом. Как определить номер COM-порта к которому подключен модем.
Некоторые необходимые уточнения:
1) Модемы установленные в системе определяются из реестра.
2) Программа находит все стандартные модемы и порты к которым они подключены и
даже некотрые PCI(Plug&Play). Порт задан либо в той же секции реестра либо в секции
PCI устройств.
3) К сожалению не определяется порт у USB, PCMCI(может воспроизвел неточно — это модемы для ноутбуков) и некотрых Win-Soft модемов.
4) Устроят любые способы кроме перебора COM портов по CreateFile.
Re: Как определить COM-порт к которому подключен модем
| От: | ua1zcl | www.alexklm.ru |
| Дата: | 11.05.02 08:51 | |
| Оценка: |
Здравствуйте Mikki, Вы писали:
M> Доброе утро, день, вечер, ночь.
M> Поможет ли кто-нибудь советом. Как определить номер COM-порта к которому подключен модем.
А не подойдёт ли чтение из реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Modem\0000 и делее
и искать ключи «AttachedTo» (==COM2)
и «DeviceType» (==1)
можно и «ConfigDialog» (==modemui.dll)
и «DriverDesc» (==Rockwell External V.90 K56 Voice Modem)
Можно убедиться тот ли модем который разыскивается через TAPI:
lineInitialize() — получение количества LINE утройств
lineGetDevCaps() — получение типа устройства и его навания
Re[2]: Как определить COM-порт к которому подключен модем
| От: | Аноним |
| Дата: | 11.05.02 11:29 |
| Оценка: |
Здравствуйте ua1zcl, Вы писали:
U>А не подойдёт ли чтение из реестра:
U>HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Class\Modem\0000 и делее
Все именно так и делается.
U>и искать ключи «AttachedTo» (==COM2)
Не присутствует для тех модемов которые я описал(Win-Soft,PCMCI,USB).
U>и «DeviceType» (==1)
А это что означает?
U>Можно убедиться тот ли модем который разыскивается через TAPI:
U>lineInitialize() — получение количества LINE утройств
U>lineGetDevCaps() — получение типа устройства и его навания
И номер порта там присутствует? Я новичок в программировании TAPI поэтому если не тяжело дай немного больше информации по этим функциям и где конкретно там можно получить номер порта.
Спасибо за ответ.
Re[3]: Как определить COM-порт к которому подключен модем
| От: | ua1zcl | www.alexklm.ru |
| Дата: | 11.05.02 20:46 | |
| Оценка: |
Здравствуйте Аноним, Вы писали:
А>И номер порта там присутствует? Я новичок в программировании TAPI поэтому если не тяжело дай немного больше информации по этим функциям и где конкретно там можно получить номер порта.
А>Спасибо за ответ.
Нет, в lineGetDevCaps можно увидеть не более того чем в реестре, а номер ком порта не приводится. Это пожалуй всё что я знаю. Было бы у меня на машине болше железа мог бы и поискать. А так — бесполезно.
Re[4]: Как определить COM-порт к которому подключен модем
| От: | Аноним |
| Дата: | 25.12.03 21:46 |
| Оценка: |
Здравствуйте, ua1zcl, Вы писали:
U>Здравствуйте Аноним, Вы писали:
А>>И номер порта там присутствует? Я новичок в программировании TAPI поэтому если не тяжело дай немного больше информации по этим функциям и где конкретно там можно получить номер порта.
А>>Спасибо за ответ.
U>Нет, в lineGetDevCaps можно увидеть не более того чем в реестре, а номер ком порта не приводится. Это пожалуй всё что я знаю. Было бы у меня на машине болше железа мог бы и поискать. А так — бесполезно.
ну как определить. делаешь WriteFile(hPort. «ATZ\r». );
ЖДЕШЬ и после читаешь ответ. ждешь ответ — WaitCommEvent(), прежде сделаей SetCommMask(hPort, EV_RXCHAR);
если strstr(receiverData, «OK»)!=NULL || strstr(receiverData, «0»)!=NULL значит модем )
если что не ясно — пиши на black_c0de@nteam.ru
Порты маршрутизаторов
В компьютерном мире слово «Порт» имеет два значения. Первое – это физический порт, то есть разъем для подключения.
Физическими портами являются LAN-порты, то самое гнездо, куда подключается сетевой кабель локальной сети; USB-порт, к которому подключаются флешки и другое оборудование; COM порты и множество других. Но также существуют и сетевые порты – это, грубо говоря, идентификатор программы, которая обменивается данными по сети. Разберемся, что такое сетевой порт и как узнать порт роутера.
Как известно, при обмене информацией между компьютерами отправитель и получатель находят друг друга по сетевому адресу IP. Но IP адрес у компьютера один, а сетевых программ одновременно может быть запущено много, например, ICQ, веб браузер, скайп и электронная почта. От всех приложений одновременно приходят ответы, и компьютер должен понять, какой из них кому предназначается. Именно для этих целей с служат порты, например, веб браузеру присвоен порт 80, почтовому клиенту – 25. Многие сетевые программы, такие как скайп и ICQ, не имеют закрепленных портов, то есть его можно сменить на другой в любой момент.
Переброс портов на маршрутизаторе
Для чего же нужен переброс портов на роутере? Например, у вас в локальной сети создан сайт, на который без проблем может зайти любой пользователь данной локальной сети. Но при попытке зайти на него из Интернета выдается ошибка, сайт недоступен. Это происходим из-за того, что настройки роутера отбрасывают всю информацию, приходящую извне, если номер порта не прописан в «белом» списке. Для решения этой проблемы необходимо указать маршрутизатору, что если пришла информация для такого-то порта, то необходимо эту информацию отправить такому-то компьютеру по такому-то IP адресу.
Рассмотрим, как производится настройка портов роутера основных производителей сетевого оборудования:
- ZyXEL, модель NBG460N;
- TP-LINK, TL-WR741;
- D-LINK DIR-620.
Настройка проброса портов на маршрутизаторе ZyXEL
Хоть внешне меню настроек разных линеек маршрутизаторов и отличаются, но принцип настройки везде схож – необходимо найти пункт меню с названием наподобие «Сеть», «Network», или что-то схожее. Например, настроим работу роутера NBG460N с торрентом. Для проброса порта входим в пункт «Network», далее подменю «NAT».

Настройка проброса портов маршрутизатора ZyXEL
Во вкладке «Application» ставим галочку в поле «Active», тем самым включив функцию переброса. Далее в полях задаем правило – в поле «Service Name» задаем имя исключению (например, Torrent, чтобы потом в будущем самим же не запутаться), в поле «External port» и «Internal Port» вводим номер порта, на котором работает наша программа на компьютере. В поле «Server IP Address» вводим сетевой IP-адрес того же компьютера. Жмем «Apply».

Добавление правила проброса порта для торрента
Снизу окна появится данное правило.
Настройка проброса портов на маршрутизаторе TP-LINK
Далее узнаем, как настроить порты на роутере от производителя TP-LINK, модель TL-WR741. Для этого заходим в меню настроек роутера, далее выбираем пункт «Переадресация», и далее подпункт «Виртуальные сервера».

Выбор пункта настройка проброса порта на маршрутизаторе TP-LINK
В основном окне нажимаем кнопку «Добавить новую…». Откроется окно настройки переброса портов.

Настройка проброса портов TP-LINK
Здесь необходимо создать само правило. Для этого в поле «Сервисный Порт» вводим номер пробрасываемого порта, например, 1234. В поле «IP-адрес» вводим сетевой адрес компьютера, которому необходимо пересылать данные, адресованные порту 1234, в поле «Протокол» выбираем протокол (про этот момент остановимся подробнее). В строке «Статус» выбираем значение «включено» или «выключено».
Что касательно выбора протокола – в списке есть выбор между TCP и UDP. Это разные протоколы, порты которых между собой не пересекаются. Другими словами – если порт 1234 для протокола TCP будет занят, то это не значит, что протокол UDP не может этот порт использовать.
По этой причине, если в настройках роутера указан протокол TCP, на маршрутизатор придет блок данных, управляемых протокол UDP, то маршрутизатор его проигнорирует, хотя порт будет 1234. Если протокол не известен, то для решения данной проблемы создаем копию правила, но в поле «протокол» указываем второй тип протокола. Но можно создать и другое правило. Например, для порта 1235.
Пункт «Общий сервисный порт» оставляем по умолчанию, жмем «Сохранить». Появятся оба правила.

Отображение правил проброса портов TP-LINK
Следует обратить внимание, чтобы статус всех правил был в состоянии «Включено».
Настройка проброса портов на маршрутизаторе D-LINK
Далее рассмотрим настройку на примере роутера D-LINK, модель DIR-620. Как и в других роутерах – заходим в меню настроек. Далее пункт «Межсетевой экран», подпункт «Виртуальные серверы».

Вход в меню настроек проброса портов D-LINK
Нажимаем кнопку «Добавить». Откроется форма для заполнения правила.

Форма заполнения проброса портов D-LINK
В поле «Шаблон» выбираем «Custom», то есть ручная настройка. В поле «Имя» вводим название правила. В поле «Интерфейс» выбираем интерфейс (то есть физический порт), для которого настраиваем правило. Протокол – так же, как и в предыдущем роутере. В полях «Внешний порт» и «Внутренний порт» прописываем номера порта/портов, по которым проходи запрос, и порта/портов, на которые эти данные будут перенаправляться. Соответственно в поле «Внутренний IP» вводится сетевой адрес компьютера, которому необходимо отправлять.
Для сохранения настроек нажимаем кнопку «Изменить». Откроется предыдущее окно, в котором появится новое правило.