IP TTLを設定する

ここでは、SetIpTTLを利用してWindowsのDefault IP TTLの設定を変更するプログラムの書き方を説明したいと思います。

サンプルコード

以下の例では、コンピュータのIP TTLの設定を変更します。 SetIpTTLを行うと機器内で全ての通信用のIP TTLのDefault設定が変わってしまうので気をつけてください。


#include <stdio.h>

#include <winsock2.h>
#include <iphlpapi.h>

int
main()
{
 UINT defaultTtl;
 DWORD dw;

 defaultTtl = 64;
 dw = SetIpTTL(defaultTtl);
 if (dw == NO_ERROR) {
   printf("Default TTL set to %d\n", defaultTtl);
 } else {
   printf("SetIpTTL failed\n");
 }

 return 0;
}

機器で設定されているDefault TTLの値を知るにはGetIpStatistics()を利用してください。

上記サンプルはSetIpTTL()を利用してDefault TTLを設定していますが、SetIpStatistics()を利用してDefault TTLを変更することも可能です。

サンプルコード実行例

上記コードをコンパイルして出来たものを実行すると、以下のようになります。


C:> a.exe
Default TTL set to 64

IPv6基礎検定

YouTubeチャンネルやってます!