Соединение двух компьютеров через модемы (RJ11)
Я хотел бы воссоздать старый опыт дозвона, но без фактического номера дозвона телефонного провайдера. Поэтому я подумал, что, возможно, машина Linux может разместить ppp-сервер и принимать вызовы удаленного доступа с машины win98 через провод RJ11 и совместно использовать с ним интернет-соединение. Возможно ли что-то подобное?
3 ответа
Linux поддержал ppp
с тех пор навсегда. Ты бежишь pppd
с параметрами, которые сообщают ему, какой последовательный порт слушать и другие вещи, а затем он делает ppp0
(или другой) интерфейс. Затем вы можете настроить маршрутизацию и межсетевой экран (используя iptables
) как и любой другой интерфейс.
Так что, если все, что вы хотите сделать, это поиграть с ppp
Вы можете сделать это с помощью нуль-модемного кабеля, соединяющего последовательные порты двух систем. Если вы установите скорость последовательного порта на 33,6 Кбит / с или даже ниже и будете маршрутизировать Интернет через соединение ppp, у вас будет довольно хорошее моделирование скорости модема.
Если "клиент ppp" - Windows, Windows настаивает, что другой конец - модем. Это означает, что Windows всегда будет пытаться посылать команды "AT" через последовательный порт, прежде чем начать говорить ppp через последовательный порт. AT-команды локально понимаются модемом, но не являются частью ppp. Не бойтесь, Linux "ppp" поддерживает скрипт "chat", который может реагировать так, как ожидает Windows.
Вот выдержка из pppd
Команда, которая начала все это, когда я возился с этим, вы можете использовать его как шаблон и заменить соответствующим образом:
pppd 115200 netmask $LOCAL_NET_MASK crtscts connect 'chat -v -f /etc/admin/network/winclient.chat' lock local ms-dns $LOCAL_IP ms-wins $LOCAL_IP persist proxyarp silent $PPP_IFACE_ADDRESS $TTY noauth
В Linux обычно ваш модем будет подключен через последовательный порт, или это будет эмулироваться PCI-картой или встроенным чипсетом (внешние функции работают намного лучше с Linux). Модем реализует протокол V.92 или любые другие протоколы, производящие звук по телефонной линии.
Если вы хотите симулировать эту часть, вы можете попробовать Softmodem . Это будет принимать аудио вход и выход через JACK и фактически выполнять аудио "модулировать / демодулировать" часть, которую должен делать модем (хотя я считаю, что он ограничен 14Kpbs). Я не мог заставить его работать на моем сервере, но у меня нет большого опыта работы с JACK (или реальным аудиоустройством на сервере, кроме динамика ПК ...)
Вы могли бы сделать это, если бы использовали симулятор телефонной линии - устройство, которое подает на устройство ток, с которого работают телефоны - в Jagshouse есть статья, в которой подробно рассказывается, как их построить.
Быстрый поиск в Google также показывает, что есть готовые коммерчески доступные модели того же устройства, если вы не были склонны к сделке.
Линейный симулятор должен воспроизводить эффект подключения двух телефонов по обычной телефонной линии и позволять вам общаться между собой с помощью AT-команд.
Вы должны будете связать два модема с некоторой формой системы телефонной станции. Недостаточно просто соединить их вместе - PSTN (телефонная система) фактически обеспечивает питание через провода для таких вещей, как сигналы вызова и тому подобное.
Самое близкое, что вы могли бы получить без телефонной станции, - это просто использовать нуль-модемный кабель, чтобы соединить два последовательных порта вместе и покончить с фактической частью набора номера.