web-dev-qa-db-ja.com

PSTN回線なしでアナログダイヤルインPSTN端末に接続する

インターネット接続なしのコンピューター(「サーバー」)があり、GSM信号なしの場所にあります。接続する唯一の方法は、アナログモデム(US Robotics 56Kbit/s)です。このモデムは、地理的な番号を持つ国内のPSTN回線に接続されており、サーバー(最新のLinuxディストリビューションを実行している)は、ダイヤルインシリアル端末を提供するように構成されています。明確にするために、このPSTN回線に電話をかけると、モデムがハンドシェイクし(V90プロトコルだと思います)、ログインが表示され、ttyS0を使用します。 IP/PPPプロトコルスタックはなく、シリアル端末だけです。

物理的なアナログモデムを持ち歩く必要がなく、(さらに悪いことに)少なくともここイタリアのビジネスコンテキストでは実際には不足している物理的なPSTN回線を見つける必要のない方法で、このサーバーに接続したいと思います。明確にするために:サーバー側のPSTN回線が唯一の方法ですが、クライアント側の物理的なPSTN回線なしで接続できるようにしたいと思います。

私の頭に浮かんだいくつかのアイデアですが、それらが実際に実装できるかどうかはわかりません。

  • Bluetooth/USBを介して携帯電話を接続している。古い電話はATコマンドを処理するttyUSBをエクスポートしましたが、オーディオストリームを取得する方法(AFAICT)がありませんでした。電話をかけ、音声を半生のUDPストリームにエンコードするAndroidアプリを作成することが技術的に可能かどうかはわかりません。

  • VOIPを介して通話をルーティングします。ぐるぐる回ってみると、g711(uLaw/aLaw)を使用したVOIPターミネーションを介してアナログモデム通話を行うことに成功した人もいるようです。少なくとも9600bpsを取得できるようですが、これで十分です。

  • 上記のいずれかが可能であっても、完全なV90プロトコル/ハンドシェイク/その他をエミュレートし、オーディオをバイトにエンコード/デコードするソフトウェアはありますか?

  • 加入者に一連のアナログモデムを提供するオンラインサービスはありますか?私が個人的に投資するビジネスには聞こえませんが、あなたは決して知りません:)

  • SIMを中に入れるUSB経由で接続されたボックスのように、アナログモデムに相当する最新のUMTSである物理オブジェクトはありますか?それはすべての魔法を実行し、PCにttyUSBを提供しますか?

  • サーバーに物理的に一度だけアクセスできると仮定すると、サーバーにインストールできるもの(ハードウェアまたはソフトウェア)はありますか?それは私の生活を楽にしますか?唯一の必要条件は、標準の国内PSTN回線(デュアルツイスト銅線)を経由する必要があることです。他の信号を取得する方法は他にありません。モデムは最初は最良の選択肢のように見えましたが、あなたは決して知りません。

ありがとう!

7
Giovanni Bajo

これを行う方法はたくさんあると思います。頭に浮かぶのは コールバック です。

サーバー上のモデムのダイヤルインISPアカウントを登録します。それは十分に単純で、論争の余地はありません。静的アドレスを割り当てるISPが必要になります。これに追加料金がかかる場合は、それを支払います。

次に、 diald のように構成して、オンデマンドでリンクを上下させます。次に、おそらく swatch を使用して、モデムログファイルに表示される「RING」メッセージを検出し、それらを検出したときに、「興味深い」と見なされるトラフィックを生成する小さなスクリプトを記述します。ラインを上げるために。

通常のインターネット経由でサーバーに接続する場合は、固定電話またはGSM電話から、サーバーに接続されている電話回線に電話をかけます。サーバー上のスクリプトは、電話のRINGを検出し、ダイヤルされた興味深いトラフィックを生成します。 DialedはPPP接続を確立し、その時点でサーバーは既知の静的IPアドレスで使用可能になります。

通常のインターネットツールを使用して、完了するまでSSH(または他のIPプロトコルまたはそれらの組み合わせ)を介して接続します。完了したら、これらの接続をすべて切断し、しばらくすると、回線がアイドル状態であることに気付き、モデムを切断します。

リンス。繰り返す。

可能な機能強化:静的アドレスを実行するISPサービスを取得できない場合は、インターネットリンクが確立された後に最初に発生するのは、電子メールで送信されるようにダイヤルを構成できます。事前に設定されたアドレスへの現在のIPアドレス、または他の方法でインターネットに通信します。そうすれば、回線が来るたびにどの動的アドレスを取得しているかを知ることができるので、それと話すことができます。ただし、静的アドレスの方が簡単です。

代替案:ほとんどのGSM電話は、古いPOTS番号にPPP接続して、ターミナルセッション。私は この技術ノート 数年前にATコマンドセット(ほとんどの)を尊重するモデムを備えたGSM電話を入手するための要点について書いたそれら)ISPにダイヤルインします。

魔法の「GPRSを立ち上げる」番号の代わりにGSM電話に標準の固定電話をダイヤルさせることは完全に合法です。

atd*99***1#

atd0039nnnnnnnn

/etc/ppp/chat-gprs、ここでnnnnnnnnはサーバーの固定電話番号です。これはGPRS、そしておそらくEdgeでのみ機能することに注意してください。 3Gは、さまざまな方法でアクセスされるまったく異なるプロトコルであるため、この方法では低速(20kb/s程度)の接続しか得られません。しかし、ストレートターミナルセッションの場合は、それで十分かもしれません。

4
MadHatter

市場にはさまざまなターミナルサーバーがあります。それらにtelnet/sshを実行し、接続すると、コンソールサーバー上の1つ以上のシリアルポートと対話できます。これらのシリアルポートは通常、ヌルモデムケーブルを介して他のサーバーに接続されます。サーバーにシリアルポートがある場合は、これが最善の方法です。次に、モバイルブロードバンドデバイスを使用して接続を確立し、動的DNSまたはVPNマジックを追加してIPの変更に対処できます。

古いGPRS/Edge USBモジュール(またはUSBを備えたハンドセット)は、Linuxではシリアルデバイス(ttyUSBまたはttyACM)として表示されます。サーバーのinittabを切り替えて、gettyをそれにバインドできるはずです。私は過去に外部(実際のシリアルポート接続)GSMモデムでこれを行いました。 USBでも動作するはずだと思います。

サーバーにシリアルポートではなく内蔵モデムがあり、それを交換できない場合、事態はさらに複雑になります。 VoIPが機能する可能性があります。生のPCMに近いほど、オッズは高くなります。固定無線端末(基本的には携帯電話ですが、スピーカー/マイク/キーパッドの代わりにFXSポートを備えています)も機能する可能性がありますが、VoIPと同じ問題が発生する可能性があります。

3
techieb0y

私はあなたの要件を完全に理解しているかどうかわかりません。私はあなたが求めていると思うものを入力し、そこから行きます:

1)アナログモデムに接続されたpstn回線のみを備えたサーバーがあります。 2)電話回線を(他の用途のために)解放し、サーバーへのアクセスを維持したい。

F 1と2が正しければ、他の選択肢はありませんが、何らかの形のインターネット接続を使用するには、USB 3Gスティックを使用すると、ssh経由でタップして必要な管理タスクを実行できる接続が提供されます。

また、ある種のxDSL回線をインストールすることもできます。これにより、pstn回線が解放され、通常の電話として使用できるようになると同時に、インターネットアクセスが可能になります。

0
MAT