• ベストアンサー

AからBにpingできるのにBからAにはpingできません。

すみません、またまた教えてください。 ある端末Aと端末Bの通信において、 端末Aから端末Bへのping命令は成功し、 その逆の端末Bから端末Aへのping命令は失敗するというトラブルが発生しているのですが、 原因の解明に手間取っています。 ルーター内蔵型ADSLモデムの仮想~~機能というのを多用していて、 けっこう複雑なネットワーク構成になっているのですが、 できれば、このネットワーク構成は変更せずに問題を解決したいです。 以下に少し詳しく私のネットワーク構成の説明を書きます。 まず、ルーター内蔵型ADSLモデム(以下ルータ)の仮想DMZホスト機能を使用しています。 その上でルータのLAN側インターフェースに192.168.1.1/25以外に192.168.1.129/25という仮想DMZ側のIPアドレスを設定しています。 対象となる2つの端末は、LAN内に設置してあるXP機と、仮想DMZ領域に設置してあるレッドハットです。 このようなネットワーク構成でXP機からレッドハットへのping命令は成功するのですが、 レッドハットからXP機へのping命令は失敗します。 ping命令が失敗する原因としてどのような事が考えられますか。 何か思い当たることがある方、ご回答よろしくお願いします。

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

  • ベストアンサー
  • ezplus
  • ベストアンサー率54% (6/11)
回答No.7

あら、そうだったんですか(^^ゞ 私が以前社内LANでPC稼動確認のため全PCに対してpingを投げてみたところ そういう結果だったもので・・・。 で、仮想DMZ機能ですがウチのルータにもありまして、見てみたんですが 意味合いとしてはネットゲームとかのようなIPマスカレードではムリだけれども StaticNATならOKみたいなものに使用するような感じのことがHELPに でてました。 ま、ウチのと同じ機能なのかどうかはわかりませんけれども・・・。 ちなみにウチのルータにはそれとは別にバーチャルサーバ機能ってのが ありまして、外部公開サーバをおく場合に、外部から特定のポートに 対して届いた要求を特定のプライベートアドレスのPCに転送するという ものなんですが、公開サーバを置くのならこのような機能があれば いいのかなと思います。 回答というよりかはウチのルータにある機能の話ばっかりで 役に立たなさそうです。すんませんm(_ _)m

zyousuke
質問者

お礼

ezplusさん、ご返信ありがとうございます。 私のXP機もSP2を適用済みですので、 Windowsファイアウォールの状態を確認してみたところ、 有効になっていました。 やはり、前述したようにTCPレベルでのフィルタリングはpingには影響を与えないと思われます。 また、私も自分のルータについて、説明書を読んでみました。 すると、なんと仮想DMZホスト機能について、重大な事実が記載されていました。 仮想DMZ領域内のパソコンは、仮想DMZ領域外のパソコンにアクセスすることはできないと、 DMZの頁の最初に記載されていました。 そういうわけで、レッドハットからXP機にアクセス出来ない原因は、 ルータや端末の設定ではなく、ルータの仕様によるものだったのです。 この説明書を読み返していれば、皆さんの手をわずらわせることもなかったのです。 どうも、スミマセンでした。 この仮想DMZホスト機能は、様々な利用法があるそうで、 サーバー公開の他に、 やはり、IPマスカレードでは不可能なネットワークゲームで遊ぶためにも利用されるのですね。 また、サーバー公開の際に、この仮想DMZホスト機能を使用する利点についても記載されていました。 説明書には次のように記載されています。 DMZを使用することにより、外部からアクセスされるDNSサーバ、メールサーバ、Webサーバなどを設置するときに既存のローカルネットワークに対して高度なセキュリティを確保することが可能です。 この文にあるように、やはりDMZホスト機能は、LANのセキュリティーを高める効果があるようです。 ただ、説明にもあるように、DMZ領域に設置した端末は、DMZ領域外と通信することが出来ないため、 サーバーをDMZ領域に設置した場合、いろいろ不都合な点が出てくると思います。 外部からのセキュリティーを高めるということは、 すなわち、こちらの自由を低めることにもつながり、 どこで線引きをするか見極めることが重要だと思いました。 今回の場合は、仮想DMZホスト機能を使用することにより、 これからやろうと思っていることが、円滑に行えなくなるような気がするので、 やや、不安は残りますが、 仮想DMZホスト機能の使用はあきらめようと思います。 ちなみに、ezplusさんのルータのバーチャルサーバ機能というのは、 私のルータの静的IPマスカレード機能に相当するのだと思います。

その他の回答 (6)

  • ezplus
  • ベストアンサー率54% (6/11)
回答No.6

やっぱりWinXPのファイヤーウォールのせいではではないかと思うんですが・・・。 WinXP SP2になってからping(tracertも同じく)に対する応答は 返さないようになってますので。 一度ファイヤーウォールを無効にしてみてpingを飛ばしてみるのは いかがでしょうか? あと、Norton Internet Securityとかウイルスバスターの ファイヤーウォール機能なんかもpingの応答は返さないかもです。

zyousuke
質問者

お礼

ezplusさん、ご返信ありがとうございます。 LAN内の他の端末からXP機にping命令を飛ばしましたところ、成功しました。 以上より、XP機自身にはping要求を拒否する設定はされていないと思われます。 また、問題となっているレッドハット機のIPアドレスを変更し、 LAN内に設置したところ、各端末にpingが届くようになりました。 以上より予想できることは、 ルータの設定にて仮想DMZ領域に設置した端末は、他の端末にpingを飛ばすことができないようになっていると思われます。 そこで妥協案としては、 ルータの仮想DMZホスト機能の利用をあきらめることが考えられます。 LANを全て同一ネットワークにしてしまえば、問題なく通信が行えると思います。 元はと言えば、ルータに仮想DMZホストなる機能が付いていて、好奇心から利用していましたが、 実は、この仮想DMZホスト機能を利用することによって、どのような利点があるのか、 ということは、あまり分かっていません。 そもそも、インターネット側からアクセスできるのは、 グローバルアクセスを設定してあるルータと、 そのルータの静的IPマスカレード機能によって設定した、いくつかのサーバ機のみで、 それ以外のプライベートIPを設定した端末はインターネット側からは見えないのですものね。 上記のように考えると、 なにも、わざわざ仮想DMZホストを用意しなくても、 十分な安全が確保できると思うのですが、 どうなんでしょうか。

zyousuke
質問者

補足

スミマセン、誤字を発見しました グローバルアクセスとなっているところを グローバルアドレスと読み替えてください。

  • OsieteG00
  • ベストアンサー率35% (777/2173)
回答No.5

失礼しました。ネットワーク層でした(^^)ゞ パケットフィルタか、静的ルーティングではないかな、と思うんですが。 ルータの型番を書いてもらえると良いかも。

zyousuke
質問者

お礼

OsieteG00さん、再返信ありがとうございます。 そうですか、ICMPは、やはりネットワーク層でしたか。 私の知識も、まだまだ捨てたものではないですね! ルータは電話局からレンタルしているものでして、 ルータとはいっても、実際にはルータの機能を内蔵したADSLモデムということになります。 型番というか、商品名っぽいものが説明書に記載されていますので、 これをお知らせします。 ADSLモデム-NV というものです。 短い名前ですが、多分これが正式な名前だと思います。 以上より何か分かりますでしょうか。 さすがに、これだけの情報で原因を予想するのはキビシイですかね。 うぉおおー、なんで、できないんだぁああー! はっ、スミマセン取り乱しました。

  • OsieteG00
  • ベストアンサー率35% (777/2173)
回答No.4

#1です。 まず訂正です。hostではなくてhostsファイルです。/etc/hostsにあります。コンピュータ名とIPアドレスを対応させているテキスト形式のファイルです。 pingで使用しているICMPプロトコルはトランスポート層ですので、TCPレベルです。よって、ポートの開放が必要になりますね。また、UNIXでは一般的にtraceではなくtracerouteコマンドです。ネットワークコマンドについて下記に貼っておきますね。 pingがゲートウェイを越えられない理由はちょっとわかりません。pingがWAN側へ飛んでいるという事は無いですか? http://www.atmarkit.co.jp/fnetwork/netcom/traceroute/traceroute.html http://www.atmarkit.co.jp/fnetwork/netcom/ping/ping.html http://www.atmarkit.co.jp/fnetwork/netcom/route/route.html

zyousuke
質問者

お礼

OsieteG00さん、再返信ありがとうございます。 /etc/hostsを確認しました。 127.0.0.1に対して、このサーバーの「FQDN」と「ドメイン抜きのホスト名」さらに「localhost.localdomain」「localhost」の4つの名前が記述されていました。 それ以外の設定は何もありませんでした。 ただし、ping命令の引数としてはホスト名ではなく、直接IPアドレスを指定していますので、 /etc/hostsの設定ミスは今回のping命令が失敗する原因から除外します。 ICMPプロトコルについては、いくつかのサイトを回ってみたのですが、 ネットワーク層のプロトコルだという記述をよく見かけますよ。 むむむ、どっちが正しいんだ??? traceroute命令を実行してみました。 やはり、最初の関門であるルータにたどり着けていないようです。 また、自端末に割り当ててあるIPアドレスに対してping命令を実行したところ、成功しました。 となると、ますますルータの設定が疑わしいですね。 また、pingがWAN側へ飛んでいないか確認しました。 試しにping命令の引数にヤフーのIPアドレスを指定してみました。 結果はping失敗です。 うーん、何なんでしょうね。

  • mii-japan
  • ベストアンサー率30% (874/2820)
回答No.3

LANからDMZでIPマスカレードが設定されていませんか ping でなく tracert  を使用すればもう少し詳しい情報が取得できます 参考までに

zyousuke
質問者

お礼

mii-japanさん、ご返信ありがとうございます。 私のルータには インターネット側からやってきたTCPセグメントの種類に応じて、 それぞれ指定したホストへ転送するという、 静的IPマスカレードという機能があります。 ただしこれは、あくまでインターネット側からやってきた要求を振り分けるための機能です。 LAN間通信での、IPマスカレード機能は付いていないと思われます。 LAN内では、全ての端末が見れるため、特にTCPセグメントの種類に応じて特定端末に転送するような設定はしていません。 私のルータの仮想DMZホスト機能で行える設定はこのくらいです。()内は現在の設定値 ・ホスト機能を使用するかどうかの設定(使用する) ・DMZホストをLAN側と仮想DMZ側のどちらに配置するかの設定(仮想DMZ側) ・DMZホストのIPアドレスの設定(192.168.1.130)(1個しか書く場所がないので、恐らく2個以上のDMZホストを設置することは出来ないと思われます) ・仮想DMZ側ネットワークのIPアドレスの設定(192.168.1.129) ・仮想DMZ側優先DNSの設定(192.168.1.2) ・仮想DMZ側代替DNSの設定(空白) ・LAN側送信モード、LAN側受信モード、仮想DMZ側送信モード、仮想DMZ側受信モードの4つそれぞれにおけるRIPの設定(全て送信しない(初期設定)) tracertですが、 なんと私のレッドハットには入っていないようです。(コマンド名が違うのかな) レッドハットをインストールするとき、高速サーバーを目指して最小構成でインストールしました。 ひょっとしたら、それが原因でtracertがインストールされなかったとか・・・。 ただ、XP機にではなくゲートウェーであるルータ(192.168.1.129)に向けてping命令を出してみたところ、失敗しています。 どうもXP機どころか直近のルータへすらpingが届いていないようです。 スミマセンが、以上より、他に何か思い当たる点がありましたら教えてください。 また、 No.1の回答者様のお礼欄に、やや詳細なネットワーク構成を記述しましたので、ご覧いただけますか。

  • DAN55
  • ベストアンサー率28% (22/76)
回答No.2

XPのFW設定は?

zyousuke
質問者

お礼

DAN55さん、ご返信ありがとうございます。 XP機のファイアウォール設定なのですが、 ちょっと設定方法が、よく分からないので、 手っ取り早く、まずはレッドハットからルータへのpingを試みてみました。 この操作についての詳細はNo.1の回答者様へのお礼欄に記述しましたので、 もしよろしければ、ご覧いただけますか ひょっとしたら、ルータの仮想~~のような機能には、 様々な制約が付くのかも知れませんね。 出来ることなら、今のネットワーク構成を変更せずにトラブルを解決したかったのですが、 結局は、機器構成も含め、ネットワークを見直すことになるかも知れませんね。

  • OsieteG00
  • ベストアンサー率35% (777/2173)
回答No.1

・Redhat機のhostファイルの設定ミス ・ルータのポート開放 ・NATの設定 ・XP機のファイアウォール あたりかな、と思います。

zyousuke
質問者

お礼

OsieteG00さん、ご回答ありがとうございます。 お教えいただいた4点についてご報告します。 ・Redhat機のhostファイルの設定ミス hostファイルとは/usr/bin/hostのことでしょうか。 このファイルは、どうもバイナリーファイルのようです。 スミマセン、このファイルはどのように設定すればよいのでしょうか。 ・ルータのポート開放 ルータにはインターネット側からの各要求に対して制御する機能がありますが、 今回のようなLAN内の通信を制御する機能は、どうも見あたりません。 恐らくLAN内では全ての通信が許可されているのだと思います。 しかし、そもそもpingはIPレベルのコマンドのため、 例え全てのポートが閉ざされていたとしても問題ないという認識を持っていたのですが、 やはり、どこかのポートを開放する必要があるのでしょうか。 ・NATの設定 スミマセン、NATの設定もよく分からないのです。 NATも本来はインターネットとLANの間に設置するものですから、 私のルータには、LAN間通信におけるNATを設定できるような機能は付いていないもようです。 ・XP機のファイアウォール XP機のファイアウォール機能は、初期設定のままだと思います。 XP機のファイアウォールの設定方法も、今ひとつ分からないため、 手っ取り早く、Redhat機からゲートウェーであるルータ(192.168.1.129)に向けてping命令を飛ばしてみました。 XP機とRedhat機の通信路は Redhat機(192.168.1.130) ↑ ↓ ルータのDMZ側インターフェース(192.168.1.129) ↑ ↓ ルータのLAN側インターフェース(192.168.1.1) ↑ ↓ XP機 となるため まず、Redhat機からルータへのpingが成功しているか確認すれば、 何か解決の手がかりになると思いました。 で、結果なのですが、失敗です。 なんと、Redhat機←→ルータ間の通信で既にトラブっていました。 こうなると、やはりあやしいのはルータの設定ですね。 はぁ、これ以上何を変更すればいいのやら・・・

関連するQ&A

専門家に質問してみよう