🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

ルーティング

ルーティングとは、TCP/IPネットワークにおいて、目的のホストまでパケットを送る為のパス選定のプロセスを言います。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Q&A

解決済

1回答

61280閲覧

pingコマンドで「転送中にTTLが有効期限切れ」になったのに「損失=0」なのはなぜ?

koyamashinji

総合スコア45

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

コマンド

コマンドとは特定のタスクを行う為に、コンピュータープログラムへ提示する指示文です。多くの場合、コマンドはShellやcmdようなコマンドラインインターフェイスに対する指示文を指します。

ルーティング

ルーティングとは、TCP/IPネットワークにおいて、目的のホストまでパケットを送る為のパス選定のプロセスを言います。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

0グッド

1クリップ

投稿2020/12/07 12:35

Windows 10のコマンドプロンプトで、pingコマンドを実行した際、

**「転送中に TTL が期限切れになりました」**と表示されるにも拘わらず、
**パケット数:損失 = 0 (0% の損失)**になるのはなぜでしょうか。

ここを読むと、

  1. TTLが0になった場合

ルーティングをする際には IP ヘッダの TTL フィールドの値を 1 つ減らします。

ルータに TTL = 1 のパケットが入ってきたとき、さらにルーティングが必要になる場合 (宛先 IP アドレスがその NW 機器に Connected の NW アドレスではない場合)、 TTL = 0となり、その NW 機器でパケットが破棄されます。
破棄されるタイミングで NW 機器からICMP の Time Exceededが 送信元 IP アドレス宛に通知されます。

コマンドプロンプトで ping を打ち、"転送中にTTLが期限切れになりました"、もしくは、"TTL expired in transit"と出てくるのは、この ICMP を受け取ったためです。

この場合の原因はたいてい、どこかでルーティングループが起こっています。『経由する NW 機器が多過ぎる』という可能性もありますが、現在では、あり得ないと考えても良いレベルです。

と書いてあります。

TTL = 0 になったとき、そのネットワーク機器でパケットが破棄され、
「転送中に TTL が期限切れになりました」が返されるという理解で間違っていなければ、
そもそも当該パケットは、google.comのサーバには届いていないはずですから、それが4回繰り返されたとすると、
送信 = 4、受信 = 0、損失 = 4 (100% の損失)、となるはずではないでしょうか?

素人質問だとは存じますが、ネットワーク関係に詳しい方是非ご教示ください。


CommandPrompt

1C:\Users\koyamashinji>ping google.com 2google.com [172.217.175.110]に ping を送信しています 32 バイトのデータ: 310.xx.xx.xx からの応答: 転送中に TTL が期限切れになりました。 410.xx.xx.xx からの応答: 転送中に TTL が期限切れになりました。 510.xx.xx.xx からの応答: 転送中に TTL が期限切れになりました。 610.xx.xx.xx からの応答: 転送中に TTL が期限切れになりました。 7 8172.217.175.110 の ping 統計: 9 パケット数: 送信 = 4、受信 = 4、損失 = 0 (0% の損失)、

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

10.xx.xx.xxから、応答パケットが4回返ってきたので、失われたパケットはありません。
つまり、損失%だけでは、目的ノードへの到達性が分からないことがあります。

TTLが期限切れ(=128ノードを経由しても目的ノードへ到達できない)というのは、LAN内では普通無いので、ルーティング設定のミスが疑われます。

投稿2020/12/07 12:47

otn

総合スコア85888

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

koyamashinji

2020/12/08 06:39

otn様、毎度ご回答誠にありがとうございます。 TTLが期限切れ(TTL = 0)となった際、そのネットワーク機器の中でパケットが破棄されるのであれば パケットは返ってこないのではないかと思ってしまいますが違うのでしょうか? ちなみに、TTLが期限切れになるのは、個人PCでなく会社PCでコマンドを実行したときです 会社PCでのみ発生する理由は何が考えられるでしょうか(google.comには問題なくつながるのですが)
otn

2020/12/08 06:49

> 10.xx.xx.xx からの応答 というメッセージの通りです。 「google.com [172.217.175.110]」からでなく、10.xx.xx.xx から応答が返っています。 pingが目的ノードからのパケットしか受け取らないと思ったら大間違いです。 > 会社PCでのみ発生する理由は何が考えられるでしょうか ネットワークが直接つながっていないのでは? > (google.comには問題なくつながるのですが) ブラウザのことであれば、プロキシーサーバー経由なんでしょう。
koyamashinji

2020/12/08 10:35

ご教示頂き有難うございました。勉強になります。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問