以下の内容はhttps://higepon.hatenablog.com/entry/20051113/1131870684より取得しました。


ルーティング解決とは?実装編

ルーティング解決とは? - Higepon’s blogの続き。
まずはストレートに実装を

 dword getIpRoute(Config& config, dword destIp)
 {
     dword destSubnet = destIp & config.getSubnetAddress();
     dword mySubnet = config.getIpAddress() & config.getSubnetAddress();

     // 同一サブネット
     if (destSubnet == mySubnet)
     {
         return destIp;
     }

     // ルーター
     return config.getDefaultGateway();
 }

同一サブネットかどうかを判定して、あて先のIPアドレスを返します。


これを組み込んでMonaで実行するとこんな感じ。


ソースは、ひげぽん/mones2/05.ICMP応答準備編 IPパケット送信/01.ルーティング解決 の編集 - Mona OS developers Wikiからどうぞ。

ちなみにこの実装の参考にしている本は


  • 作者: W.リチャードスティーヴンス,W.Richard Stevens,橘康雄,井上尚司
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2000/12
  • メディア: 単行本
  • 購入: 6人 クリック: 81回
  • この商品を含むブログ (41件) を見る

  • 作者: ゲリー・R.ライト,W.リチャードスティーヴンス,Gary R. Wright,W.Richard Stevens,徳田英幸,戸辺義人
  • 出版社/メーカー: ピアソンエデュケーション
  • 発売日: 2002/12
  • メディア: 単行本
  • 購入: 1人 クリック: 13回
  • この商品を含むブログ (25件) を見る


あたりです。


そしてまだ読んだことないのですが、アセンブリ言語の教科書の作者である愛甲健二さんの


がとても気になる今日この頃です。
というのも愛甲さんのWindows Raw Socket Programmingがとてもレベルが高く、ネットワーク知識が半端じゃなさそうだからです。

これはやばい。




以上の内容はhttps://higepon.hatenablog.com/entry/20051113/1131870684より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14