私は、モデムとPPPを実行するネットワークスタックとの間のミドルウェアに取り組んでいます。初期設定フェーズで問題が発生しています。エンドポイントはLCPパケットを構成要求と交換した後、ackし、その1つがIPCP構成要求で始まります。その後すぐにそのうちの1人が諦める。ここには私が得られないものがあります:PPPでLCPパケットとIPCPパケットが異なるフレーミングとバイトスタッフィングを行うことはできますか。
LCPパケットはHDLCのようなフレーミングを使用します。それらは0x7Eで始まり、制御バイト0x7D23 = 3の後にバイト・スタッフィングされたペイロード、チェックサム、およびフレーム・キャラクタ0x7Eが続き、アドレスは0xFFで始まります。これらのパケットは次のようになります。
7EFF7D23C0217D217D207D207D347D227D267D207D2A7D207D207D257D267D2BE5E77D257D277D227D287D2295697E
IPCPパケットは全く異なって見えます。彼らはまだ0x7Eで始まり、HDLCチェックサムを持っていますが、アドレスバイトまたは制御バイトはありません。にはバイトスタッフィングがありません。これらのパケットは次のようになります。
7E8021010000280206002D0F0103060000000081060000000082060000000083060000000084060000000079067E
これは意味がありますか?なぜこれらのパケットは互いに異なって見えるのですか?何かがここでうんざりしているのですか、これは典型的ですか?
これらのパケットキャプチャでWiresharkを実行する機会はありましたか?それはどんな助けですか? – sarnold
@sarnold Wiresharkを直接デバッグするポートはありませんが、デバッグストリームの途中でパケットをダンプすることができました。それからPCAPに変換するためのPythonスクリプトを書いて、Wiresharkに読み込むことができました。 このスクリプトを書いているうちに、2つのパケットを別々に扱わなければなりませんでした。ちょうどWiresharkがそれらを読むことができました。基本的にはHDLCのように剥ぎ取っています。 PCAPをよく理解していないかもしれません。 –
とにかくそれは、ほとんどすべての設定要求とACKですが、IPCPのようなものは通過していないようです。 –