• ベストアンサー

IPアドレスを変更するプログラム

IPアドレスを変更するプログラムを作成しようとしているのですが、そういう関数は見つからなかったのですがどのような方法がありますでしょうか? (レジストリの変更?) SDK、WinXP

質問者が選んだベストアンサー

  • ベストアンサー
  • sha-girl
  • ベストアンサー率52% (430/816)
回答No.4

とりあえずWinNT/2000/XPなら iphlpapi.hの AddIPAddress DeleteIPAddress で変更できるようですね。 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iphlp/iphlp/addipaddress.asp

参考URL:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/iphlp/iphlp/addipaddress.asp
すると、全ての回答が全文表示されます。

その他の回答 (4)

回答No.5

ANo.2のバッチファイル例です。 -------------------- netsh interface ip set dns name="ローカル エリア接続" source=static addr=123.123.123.123 register=PRIMARY netsh interface ip set address name="ローカル エリア接続" gateway=192.168.0.1 gwmetric=1 netsh interface ip set address name="ローカル エリア接続" source=static addr=192.168.0.100 255.255.255.0 -------------------- 1行目がDNSサーバ、2行がデフォルトゲートウェイ、3行目がIPアドレスとサブネットマスクです。変更不要な行は消しても大丈夫です。

すると、全ての回答が全文表示されます。
回答No.3

IPパケットのソースアドレスを変更(というか自前で作って送信)するなら特殊なソケットを使うとかあとは デバイスレベルのアクセスとかがあるんじゃないすかね。 IPアドレスを自由に変更できても正しく使う目的があんま見えないけど。

すると、全ての回答が全文表示されます。
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

プログラム的に、直接IPアドレスを変更する方法はわからないんですけど、 コマンドから Netsh set address コマンド で変更することができるので、 そういうバッチを作って置いて プログラムから呼び出すというのはどうでしょう? (もちろん、#1で言われているような注意が必要なので、こうした変更ができるということは、ネットワーク上の制約がある上でのことですけど)

すると、全ての回答が全文表示されます。
  • old98best
  • ベストアンサー率36% (1050/2908)
回答No.1

ご質問の意味がよく分かりませんが? IPアドレスはハードウエア的情報ですから、ソフトウエアで変更はできないのですけど。 住所の番地とか電話線の電話番号のように、受け取った(割り当てられた)IPアドレスを知る事は可能ですけど、勝手にウソの番地を名乗ることはできません。 IPアドレスを相談して決めるシーケンスはありますが、関数ではなくてプログラムになります。 ご使用のネットワークにより、IPアドレス割り当てのDHCPサーバと相談して打ち合わせるか、ネットワークに接続されている全ての機器と打ち合わせてIPアドレスを変更するかの、どちらかです。 ただ、どちらにしてもWindowsのOSでは無理です。

すると、全ての回答が全文表示されます。

関連するQ&A