ネットワークに関する疑問・質問 Part32 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
マルチポスト禁止 http://www.ippo.ne.jp/g/71.html 質問と一緒に書くこと: ・ 環境(OSのバージョン、機器やソフトウェアの名称) ・ 状況(エラーメッセージ、場所の名前など) ・ 試行(やったこと、調べた内容など) 質問はage進行 名無しの質問者が追記する場合は 名前欄に最初の書き込み番号を入れること 回答が書き込まれたら 後学のために結果を書いておくことを忘れない 前スレ ネットワークに関する疑問・質問 Part31 http://echo.2ch.net/test/read.cgi/hack/1475665399/ >>182 L3SWじゃなくてルーターです、ややこしくてすいません その構成でルーターの外はWANなんですがどっちにしろルータが故障したらレイヤ3以上の通信ができないので意味がないと思うのです ルーターが故障したらWindows ServerのDHCPが動いていても意味がないですよね? >>185 別に範囲を被らせてもほぼ重複はしないと思います IPアドレス決定前にARPで確認じゃないでしょうか? 意味わからん DHCPサーバが死んだらIPアドレスが貰えないからWAN/LAN問わず 通信できないだろ PCは24/365立ち上げっぱなしだし、手で設定するから 問題ないってことが言いたいの? >>189 ルーターの下にL2がいないなら無意味かもね。 あと、ARPやPINGで確認するのはクライアント側の実装次第。安全を見てずらすべき。 >>189 リース範囲を重複させるのはご法度。 例えばリース範囲が1〜nの場合、 サーバaが .1 、サーバーb が .2 だけ割り当てた状態とする。 新規クライアントがdiscoveryして、aは.2、bは.1をofferする。 クライアントはARPで確認して両方とも自分が使えないことを確認する。 クライアントがもう一度discoveryして、同様にaは.2、bは.1をofferする。 以降同じことの繰り返し 少し考えただけでもこんなことになるだろ? >>190 ルータとWS2012でDHCPが動いているということです ルータが死ぬとWS2012でDHCP動かしてもどっちにしろ繋がらないんじゃないでしょうか? >>191 安全のためにずらすべきだと思います >>193 >>182 でも言ってるけど、意味あるかは構成と要件次第だよ 構成面では、サーバがルータに直収されてるなら ルータが故障した時点でサーバも通信断になるから意味ない >>182 みたいな構成ならクライアント、サーバ間はL2SW経由で通信できるから意味ある 要件面では、クライアントはWAN側への通信しかしないのか LAN内の通信もあるのか LAN内の通信があるのであれば、サーバのDHCPは意味ある まずはその辺をちゃんとハッキリさせてよ 「どっちにしろ繋がらない」って言われても、何が何に繋がらないって言ってるのかわかんないよ IPsecとspi, ファイアウォールの話ですが、 動的グローバルIPアドレスのルータ と 固定グローバルIPアドレス で トンネルモード、aggressiveモードのIKE+IPsecを張る場合、 動的IPからセッションを張りに行くので、SPIを設定した動的IP側にはファイアウォールの設定は無い状態で、 運用はできているのですが、 マニュアルには、動的IP側にもudp dst port 500と、espのファイアウォールの指示が書かれています。 切断時などにkeepaliveが発生した場合、 直前の鍵でセッションを回復するために、固定IP側から上記パケットの新規セッションが来るということでしょうか? >>194 言葉不足ですいません ルータが死ぬとWS2012でのDHCPサーバでもIPアドレスがもらえないんじゃないかなという考えです またSMBでのファイル共有もしておりそれもできなくなるのではないのですか? L2SWが生きていてできることってよくわかりません >>196 ネットワーク構成情報がないと全くわからん >>196 念のため確認だけど例えば [WS2012(192.168.1.100/24)]---[L2SW]---[Client(192.168.1.200/24)] みたいなルータが存在しない構成でも[WS2012]と[Client]は通信できるって事は理解できてる? 【質問概要】 Linux上にネットワークブリッジを作成した場合の挙動について、解説をお願いします。問題は発生しておりません。 【環境】 CentOS 6.4 NICは1つ 【状況・試行】 /etc/sysconfig/network-scripts/ifcfg-br0 TYPE=Bridge NAME=br0 DEVICE=br0 ONBOOT=yes BOOTPROTO="static" IPADDR="192.168.xxx.3" PREFIX="24" GATEWAY="192.168.xxx.1" DNSI="192.168.xxx.3" /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE="eth0" TYPE="Ethernet" ONBOOT="yes" UUID="(省略)" BRIDGE=br0 NAME="eth0" ファイルをこのように書き換えservice network restartを行いました。 検索して調べた内容によると、ブリッジはソフトウェアとして動作する ハブみたいなものだということですが、192.168.xxx.3でこのホスト上のHTTPサーバー等にアクセスできます。 アクセスできないと困るのですが、なぜアクセスできるのかが分かりません。 192.168.xxx.3はこのホストではなくブリッジに割り当てられているのですよね? 何がなんだか分からず気持ち悪いです、よろしくお願いします。 >>199 むしろなんでアクセスできないと思ったのか。。 >>199 br0のmacアドレスとIPアドレスはホストがブリッジを介して通信を行うための物だから 192.168.xxx.3はホストに割り当てられているIPアドレスと理解してOKだよ ちょっと語弊があるかもしれないけどイメージ的には内部でにこんな感じの接続になっていると思えば良いよ -----[port(eth0)] -----[port(eth1)]<switching hub>[port]-----[ホスト(192.168.xxx.3)] -----[port(eth2)] >>198 その状態でNetBIOSの名前解決やSMBやらできるんでしょうか? 通信はできるとかかれていますがレイヤ3以降の通信ができるんでしょうか? >>202 出来るよ ルータがないと出来ないのは、ClientやServerが所属するネットワークアドレス外のIPアドレスに対する通信のみだよ Clientが通信をするとき、まず宛先IPアドレスが自分と同じネットワークに所属する物なのか、違うネットワークなのかを判断する。 同じネットワークであれば、ARPで相手のMACアドレスを取得し、そのMACアドレス宛にフレームを送出する。 直接通信相手に送る訳だからL2SWしかない環境でも通信できる。(1対1の接続ならL2SWすらいらない) 違うネットワークであれば、ゲートウェイになっているルータのMACアドレス宛にフレームを送出し、ルータに転送してもらう。 これはEthernet上のTCP/IPの極基本的な動作だから、これを理解していないと何も理解できないよ >>203 そうなんですね、恥ずかしながら変な勘違いをしていました 同じネットワークで通信する相手にはMACアドレスを使用するとは理解していたんですが レイヤ3以降の通信にはルータ以上の機器が必要と考えていました ・ 環境(OSのバージョン、機器やソフトウェアの名称) 自宅au光回線 ルーターにAterm BL190HW 使用。 無線HUBとしてAirPort(IOデータ:WN G300R)を 使用 ・ 状況(エラーメッセージ、場所の名前など) スマフォをiphone5からiphone7に変更した所(2台) 無線通信が止まってしまう事が多数発生、無線再起動で一時的に通信可能になるも 一日に何度も通信不可に。 ・ 試行(やったこと、調べた内容など) すみません、途中送信してしまいました ・ 試行(やったこと、調べた内容など) 検索したところ、iphone7だと、無線は IEEE802acに対応していないとダメとの事で Aterm BL190HW に有線で繋げる無線機を新たに交換しようと思っているのですが Atermに有線で、無線中継器を接続、無線hubとして使用は可能でしょうか? 無線中継器は、親機が対応の無線ルーターじゃないと、使用できないのでしょうか >>205 WN-G300Rのファームウェアは最新? 最新ではないならまずファームウェアアップデートを試してみたら? http://www.iodata.jp/lib/product/w/4045_win10.htm ■Ver.1.13 → Ver.1.14(2016/10/25) ・インターネット接続の動作安定性を向上しました。 ・無線の動作安定性を向上しました。 >>206 | iphone7だと、無線は IEEE802acに対応していないとダメとの事 それはガセネタ。 通信規格は下位互換なので問題なく繋がるのが仕様。 なので、機器を買い換える必要はない。 iOS10の無線LANがバグだらけなのは有名な話なので、 >207の書いていたファームアップデートを試した後、 「ios10 無線 不具合」で検索していろいろ試してみるといいのでは? >>207 >>208 ac対応じゃないと〜 はガセだったのですね、ご指摘ありがとうございます iOS10の無線LANがバグだらけなのも存じませんでした、勉強不足ですね ファームのアップデートは購入以来やっておりませんでしたので、まずはファームを アップデートしてみます ありがとうございます >>200-201 ありがとうございます。 [ネットワーク]---[ブリッジ(192.168.xxx.3)]---[ホスト] のようになってるイメージを持っていました。 192.168.xxx.3はホストに割り振られているんですね。 確かに、ハブにIPアドレスは割り振られないですね。 設定しながら混乱していました。 ありがとうございます。 >>195 単に戻りの分じゃない? TCPでは暗黙的に戻りの電文も通る前提で書かれるけど、UDPやespは戻りの分は明示的に書かれることが多いよね。 有線LANなのに接続が途切れたり繋がったりという現象がおきています BBユニットとNECのモデム?を使ってPCに繋いでいます。 OSはwin10です。 良くある原因はLANケーブルの不良 接触不良でそんな感じになったりする アドバイスありがとうございます ポートとLANケーブルを変えてみますと、解決しましたありがとうございます iptablesを起動した時のみに動作するのですが、理由がわかりません。 何故、このような挙動になるのか教えていただけませんでしょうか。 CentOS6.4上でデータ転送するプログラムを作成しました。 具体的にはeth0に来たパケットのIPアドレス、MACアドレスを書き換えて eth1から別マシンに転送するプログラムです。 eth1に来たパケットはeth0のマシンに転送しています。 ※WEBサーバに転送してテストしています。 iptablesを起動時は正常にWEB画面が表示され、データの送受信ができます。 iptablesを停止時はWEB画面が表示されず転送が行えていません。 iptablesを起動することで、転送に制限がかかることはあっても、 iptables停止時に転送ができなくなる事は想定外でした。 iptablesは通信制限をかけるものだと思っていたのですが、そもそも、 その理解が間違っているのでしょうか。 設定されているiptablesの内容です。 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT よろしくお願いします >>211 レスサンクスです。 イニシエータ側のファイアウォールは戻りは対象では無いので、書かなくてもudp500, espはアウトからインへ通ります。 もちろんレスポンダ側はファイアウォールが無いと、イニシエータ側の要求が通らないので必須です。 と、なると新規のsynで飛んでくることがあると考えるべきですよね。 >>216 インターネット側から自分に対しての通信に対してフィルタするってことなら 相手拠点以外からのアタックを落とすためなんでない? あと、tcpではないからsynフラグはないでしょ >>216 書いてたマニュアルとやらがどの機器のマニュアルかは知らんけど ファイアウォールがホールパンチングとかに対応していない事を考慮してるだけでは? >>216 まず、SYNはTCPにしかないよ。 UDP/ESPはファイアウォールルールを書かなくても外から中に入れることを前提としたマニュアルなの?それともおま環? >>215 よくわからんが、とりあえずeth0から入るパケットeth1から出るパケット eth1に戻ってきたパケット、eth0から戻すパケットをキャプチャして どこで止まってるかとか、切り分けするところから始めてみたら? 読売新聞のサイトhttp://www.yomiuri.co.jp/ にアクセスするたびに おかしなことが起こる。 1. http://www.yomiuri.co.jp/ へアクセスを試みても開かず失敗する。 2. 1を試みると、他のすべてのサイトにアクセスできなくなる。 3. 例外的にGoogle検索だけができることがある。しかし検索結果のすべてのリンクは開かない。 奇妙な現象です。 書き忘れました。 4. ルータを再起動するとアクセスできるようになります。 しかしまた1を行うとアクセス不能になります。 ルータがウイルスに感染しているかどうか確認する方法ってあるんでしょうか。 プロバイダから借りている無線ルータです。 >>224 語弊ある言い方だけどルーターはウイルスに感染しないよ >>215 そっちはフィルタの設定ですね その書式からデフォルト設定だと思われます 上手く行かないのは、プログラムの方でiptabelsの制御に関わるサービスを 利用しているのでは無いでしょうか? 通常であれば、サービスを起動させない場合、そのままパケットは入って来ますので 自ら書いたプログラムを介している以上、そのプログラムの中が分からないと何やってるか 外からでは分かりませんからね チェックフラグなど建ててログ見るしか ちなみにそのサービス有効な時WEBポート(80)はそのフィルタで拒否されるので そこに届く前に自分で書いたプログラムが通信を取ってると思われます パケットの向きの制御でLinux系なら IPマスカレード などで調べると良いと思います プログラムでやっても良いですが大体は基本機能で事足りるかと >>220 、>>226 アドバイスありがとうございます。 iptables停止時と実行時の動作を確認してみた所、何故か停止時にコネクションの確立ができていないようです。 確認できたこと 1.実行時、停止時共にUDPのパケットは転送可能 2.TCPのパケットを転送しようとしたときに、TCPDUMPでログを確認しました。 実行時のFlagsは[P.]、[.]、[P.]となっていて、[P.]が続いています。 停止時のFlagsは[S]、[R.]、[S]が繰り返されています。 「ルーター自作でわかるパケットの流れ」という書籍で学習中で、bridgeのサンプルを改造して動作させている時に iptablesの実行時と停止時で転送できないので事象を把握したいと思っています。 プログラムの中身としては、eth0と1のRAWSOCKETを作成し、各インターフェイスに来たパケットを反対のインターフェイスにwriteしています。 ※逆側のインターフェイスにwriteする前にIPアドレスを書き換え、チェックサムの再計算をして転送するようにしています。 >>229 *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] とあるので、iptablesのデフォルトルールとしてすべて受け付けるように見える また、iptablesにはパケットフィルタリング以外にパケット転送(FORWARD)機能もあるから iptables実行時のみ自作プログラムに頼らずに転送されることが予想される けどudpとtcpで動作の差異が出るのはよく分かんない 俺cさっぱだし、書いたコードのmain.cにコメント加えて貼り付けたらエロい人が教えてくれるかも ひょっとしたらLinux板の方が回答してくれる人いるかもしれんね PR-S300HIにPCと有線接続、PWR-Q200を繋いでWi-Fiを利用してます ブレーカーが落ちてからPCでネットが繋がりません、無線は繋がります ルーターの電源を落として再起動はやりました PCの設定でIPを192.168.1.2に固定してやれば繋がるようになるのですが 自動取得にすると192.168.10.12となって繋がらず ネットワークと共有センターのアクティブなネットワークな表示がネットワーク2になります この状態だとネットに繋がりません 問題ない時は2は付かずネットワークと表示されます それと前は「インターネットプロトコルバージョン6 (TCP/IPv6)」のチェックを外していたんですが 今はIPを固定してネットに繋がる状態にしてもこれのチェックを外すと繋がらなくなります PWR-Q200の電源を落としてPCのみ繋いだ状態だとIPを自動取得にしても192.168.1.2〜となって問題ないので これが原因だと思うのですが、何故こうなるのでしょうか? >>231 典型的なDHCPサーバが複数上がってるときの動作やね 192.168.10. を払い出してる方のDHCP機能切りな >>229 TCPで自作プログラムを動かしている時に、 ss -tna して、正しくethxにbindされているか確認。 あと、sysctlでip_forwarding系がどうなってるか確認。 >>231 per-q200のクレードルのスイッチが間違ってる。 >>229 その[R]を返しているのはルータ自身?もしそうなら、rawsocketを開いたプログラム以外にルータのTCP/IPスタックもパケットを処理していて強制切断していると考えられる。で、iptablesを設定すると、何らかのフィルタでその流れが阻害される、かな。 ネットワークの構成(それぞれのIPアドレス及びMACアドレス)と、sysctlの設定(forward系やfilter系)、あとは送っているパケットの詳細が分からないと何とも言えない。 >>230 プログラムが間違っていると仮説を立てて、検証方法を書いてみる 他のPCから発信されているであろう発信パケットの中身を全く同じにしてipfilterON/OFF時で比較して違うところが間違っているとこ >>229 rawソケットを使うとデフォルトのTCP/IPスタックや他のプロセスと干渉したり環境に依存したりしそうだから、tapを使ったほうが余計なことを考えないで済む分楽だと思う。 tap0とtap1を作って、eth0とtap0を標準の機能でブリッジして、eth1とtap1も同様にする。linuxだったらipコマンドかbrctlコマンドで可能。 その上で自作のプログラムはtap0とtap1の間で何かする。 やっぱりおかしい。 YOMIURI ONLINEのサイトにアクセスしようとすると開かず、 その後、その他を含めたすべてのサイトへの接続障害が起こってしまう。 >>238 現象発生中にコマンドプロンプトで↓のpingコマンド打つとどうなる? ping 8.8.8.8 ping www.ntt.co.jp 分からない現象があったので、質問します。 複雑で自分でもはっきりわからないのですが、おそらく下の画像で示すようなネットワーク構成です。 PC1-8のOSはWindows、PC9-50のOSはFedoraです。IPアドレスは、PC1-8はDHCP、PC9-50は、OS側で固定してます。 http://i.imgur.com/fcbo0Tb.png この中の、PC14を、部屋1へ移動させて、ハブにつなぎました。しばらくは何も変わらずだったのですが、数時間後、 部屋2にある、すべてのPC(PC1-8)のネットワークが繋がらなくなりました。LAN内も、インターネットも見れません。 この時、PC14にはマウスもキーボードもモニターも繋いでいなかったので、モニターを繋いでみましたが、画面が映らなかったような記憶があります。 おそらくPC14はフリーズ状態だったのではと思います。 そして、ネットワーク障害の原因を突き止めるためいろいろとしていると、PC14のLANケーブルを抜けば、障害が収まることがわかりました。 また指し直せば、障害が起こりました。PC14を再起動させると、上記の障害は起こらなくなりました。 その後PC14のOSをCentOS7に入れ替えて、しばらく放置していたところ、また上記のような障害が発生しました。なので、OSの設定が変だったのではないと思うのですが。 ちなみに、PC14が部屋2にあった頃は全く障害は起こっていません。 どなたか、なぜ障害が起こったか、思い当たることがある方はいないでしょうか。 ややこしくてごめんなさい >>242 >部屋2にある、すべてのPC(PC1-8)のネットワークが繋がらなくなりました 部屋1の間違いよね? PC14のLANケーブルが不良なんじゃね ショートかなんかでHUBが死んでる ルータAがなんだか知らんが実はL3とかで不良ポート切り離してるんじゃね >>242 PC14のNICとか、HUBのポートとか物理的な故障は考えられる あとPC14内にL2ループを起こす可能性のあるものは無い? NIC2枚でブリッジしてるとか 仮想環境使ってるとか >>242 PC14を部屋2に戻した場合に問題が発生しない事は確認してるの? >>242 ブロードキャストストーム。 ネットワークアドレスをちゃんと変えれ。 出来の悪いドライバが自爆暴走&不正フレームばらまいたことはある ハブがなんだか知らないけど 不正フレーム落とすか流すか処理できず死ぬかはものと場合次第 >>242 原因は分からないけど現象としてはネットワークループやブロードキャストストームかな >>240 繋がらないときにルータのping機能を使った結果です。 ping: Cannot resolve "www.ntt.co.jp" (Host name lookup failure) PING 8.8.8.8 (8.8.8.8): 56 data bytes 64 bytes from 8.8.8.8: icmp_seq=0 ttl=56 time=11.080 ms 64 bytes from 8.8.8.8: icmp_seq=1 ttl=56 time=10.067 ms 64 bytes from 8.8.8.8: icmp_seq=2 ttl=56 time=11.531 ms 64 bytes from 8.8.8.8: icmp_seq=3 ttl=56 time=10.551 ms 64 bytes from 8.8.8.8: icmp_seq=4 ttl=56 time=11.064 ms ----8.8.8.8 PING Statistics---- 5 packets transmitted, 5 packets received, 0.0% packet loss round-trip min/avg/max/stddev = 10.067/10.859/11.531/0.562 ms >>241 Domain Name Systemの問題っぽいですね。なぜなんだろう。 >>250 たぶんgoogleで検索ができるのはPCのキャッシュにgoogleが残ってるからだね とりあえずの回避策はPCのDNSに手動で8.8.8.8とかを設定すればよさげだね あとルータは何使ってるの? とりあえずファームアップしてみるとか みなさんのアドバイスを参考にRSTパケットを誰が送信しているのか調べてみました。 環境構成ですが、クライアントPCをAのネットワーク、WEBサーバをBのネットワークに接続し、 AとBのネットワークはサーバのeth0をAに、eth1をBに接続してます。 サーバ内ではeth0あてのパケットをWEBサーバに、eth1あてのパケットをクライアントPCに転送しています。 サーバ内でtcpdumpをeth0、eth1のtcpパケットのみ記録して調べてみた所、iptables停止時は以下の状態でした。 実オペレーションは、クライアントPCからeth0に対してブラウザでアクセス 1.クライアントPCからSYNを送付し、サーバ内のプログラムでeth1からWEBサーバへ転送 2.WEBサーバから、eth1にSYN,ACKを送付 3.eth1からWEBサーバにRSTパケットを送付 4.eth1に届いたSYN、ACKをサーバ内のプログラムでeth0からクライアントPCへ転送 2と3の間に作成したプログラムは介入しておらず、3が終わった後の4で転送プログラムが転送しています。 上記から、RAWSOCKETを使っていてListenをしていないので、3番でListenしていないポートへのコネクション 確立をさせずにOSがRSTパケットを送付しているのではないのかと考えました。 iptablesを起動時は、OSがListenしていると扱ってRSTパケットを送付しないのではないかと思ったのですが、 どうすれば確認できるかわからず、もやっとしています。 netstat -Lでiptables実行時と停止時にListen状況を見たのですが、変化はありませんでした。 また、もしListenしていないポートへのアクセスにRSTパケットを送る仕様だとすると、クライアントPCから サーバへのSYN送信時は何故RSTパケットをブラウザに返さないのか。 ※サーバ上でHTTPDのサービスは起動していません。 一瞬、わかった気がしたのですが、まだ理解不足のようです。ネットワーク難しいです。 >>252 情報が少ないのでなんとも言えんけど、 とりあえず、TCPの標準的な動作を言えば、 自分が待ち受けていないSYNが来た → ICMPで拒否する 自分が管理していない確立済みの通信が来た → RSTで切断する のがよくある実装なので、SYNとそれ以外で動作が変わるのはよくあること。 とりあえず、tcpdump取ってるならそれ貼ったほうが話は早いだろ >>252 そもそも何がしたいのかよく分からない。単にOS標準のブリッジやルーティングでは駄目なの? RAWソケットは、TCPやUDP以外の独自トランスポートプロトコルをユーザーランドで実装するとか、パケットのキャプチャくらいにしか使い道がない気がする。あとは攻撃とか。 おそらくそんな変な方法ではなく、もっと簡単な方法がある。 あと、iptablesを使っている時にrstを返さないのは、単にパケットを無視しているだけだと思う(fwが自分の存在を隠している)。iptablesによってポートがlistenになることはない。 242です。 >>243 その通りです ちなみに、HUBの故障ではなさそうです。 ブロードキャストストームという言葉は今回初めて知ったのですが、 改めて、PC14にLANケーブルを繋げて観察してみると、 刺す→NICのリンクランプが点滅→PC14につながっているハブのリンクランプが激しく点滅 →そのハブの他のLANポートのリンクランプも激しく点滅→他のPCでネットに繋がらない と言った感じになっていく様子であることがわかりました。 また、PC14にキーボードをつなげると、CapsLockとScrollLockが点滅していたため、 カーネルパニックを起こしていた様子でした。 再起動すると、現象は収まりました。 また、PC14に高負荷な計算処理をさせているときにこの問題が起こる確率が高い気がします。 計算させて1時間前後立った頃にパニックが起こったようです。 ttp://ayufishing.blog.fc2.com/blog-entry-15.html このサイトにかかれているような状態とかなり近いのではないかなと思います。パケットを投げた瞬間にパニックを起こして、パケットを放出しまくったままフリーズしてる状態なのかなと思います。 原因としては、NICの故障が一番有りえると思います。PC14のマザーボードにはLANポートが2つあるタイプなので(片方は何も刺していない)、 ケーブルを刺す穴を変えてまた試してみようと思います。 レスありがとうございます。 >>253 TCPDUMPの該当部分です 172.16.20.1 :クライアントPC 192.168.10.1:WEBサーバ 2行目と5行目が転送プログラムの転送処理です。 172.16.20.1.50462 > localhost.localdomain.http: Flags [S], localhost.localdomain.50462 > 192.168.10.1.http: Flags [S], 192.168.10.1.http > localhost.localdomain.50462: Flags [S.] localhost.localdomain.50462 > 192.168.10.1.http: Flags [R], localhost.localdomain.http > 172.16.20.1.50462: Flags [S.], >>254 RAWソケットで転送処理を作っているのは、転送したい情報のTCPペイロード内に IPアドレスを含むデータがあったためです。 なんかイロイロと後出しで出てくるから テキトーに言っとくけど カーネル内で書き換えないと性能的に問題がある そう言うマヌケなプログラムは20年くらい前に廃れてる >>256 HTTPの中身をいじりたいなら、単にプロキシを立てればいいだけ。RAWソケットを使う必要は全くない。iptablesを使って透過型プロキシにもできる。 そのtcpdumpを見るとNATしたいようにも見えるが、もしTCPペイロード中にIPアドレスを含む独自のプロトコルに対応したいのなら、linuxの場合はconntrack helperを作ることになるのかな。nf_conntrack_ftp.cあたりを参考にして改造とか。 >>258 アドバイスありがとうございます。 最初は発生している事象も理解できいなかったのですが、発生している事象が理解できてきました。 258さんの仰る通り、やりたい事はNATなんですが、独自プロトコルでTCPペイロード内に IPアドレスが含まれていたためRAWソケットで書換しています。 ヘッダ、ペイロード内のデータを書き換える事で上手く動作する事は確認できている状態です。 動作確認をしている際にiptablesが停止していると転送できない事がわかりました。 iptablesを停止している際に、listenしていないポートに対してのACKを受け取るとOSがRSTパケットを送信していました。 iptablesを起動している際は、listenしていないポートで対してのACKを受け取ってもOSがRSTパケットを送信せずに転送がうまくいきます。 iptalbes起動時は何故RSTパケットを送信しないか理由が知りたいです。 >>259 何でって、ファイアウォールが動いているからだろ 知らないパケットは無視してー切反応しないポリシーになってるんじゃないのか 情報が少なすぎて詳細は分からないが というか、そういう面倒が起きるからrawsocketは薦められない >>260 理由がわかってすっきりしました。 ありがとうございました。 iptablesの設定は>>215 の内容です。 >>256 これ、その転送プログラムとやらが動いているマシンのアドレス(localhost.localdomain)は172.16.20.1と同じサブネットでいいの?なんかアドレスが変な気がする。とりあえず情報を小出しにしないでネットワークの詳細を書いてほしい。 ・クライアント/ルータ(eth0及びeth1)/サーバそれぞれのIPアドレス/サブネットマスク/ルーティングテーブル ・クライアントからどのアドレスにどうやって接続をしようとしているのか ・ルータのiptablesのnatテーブルは空? ・ルータの/proc/sys/net/ipv4/ip_forwardの中身(iptablesのon/off時両方) ・ルータの/proc/sys/net/ipv4/conf/eth0またはeth1/rp_filter(iptablesのon/off時両方) ・そのプログラムの動作(ソースがあればベスト。どこかに貼り付けてlinkで。) ・最終的にどのようなネットワーク構成にして何をしたいのかの詳細。 ・NATしたいとの事だが、通したいプロトコルの詳細 (ダンプではHTTPだが、web上で動いているのか、あるいは全く別のプロトコルか。使うポート、複数のコネクションを張るのか、その場合クライアントとサーバのどちらが接続を開始するのか、複数のクライアントから同時接続があるのかなど) ・NATするなら、どのアドレスをどう変換するのか。 ・上げられたダンプを見ると単なるプロキシのようにも見えるが、NATでなくても良いのか。その場合普通のTCPソケットで良いはずだが、なぜRAWソケットを使うのか。 このぐらいは必須。 あと、なんかRAWソケットにこだわっているように見えるが、RAWソケット上でTCPやUDPを使うOSと干渉する可能性がある。(実際RSTをOSが返しているとかなんとか) 他の手段がとれない理由があればそれも書いてほしい。(237とか258とか、あるいはその独自プロトコルの方をいじるとか) 企業集まりまくってる高層ビルのネット回線って ビル一つで何gbぐらいの回線引いてるのですか? また、ビルの中の企業一つでどれくらいの回線引いてるのですか? >>263 そんなんビルや企業によるでしょ 画一的に決まってるもんじゃ無いし 俺が社長だったら従業員50人いるとして ギガビート光1回線にYAMAHAルータ1つ。だけにしてコスト削減するな。 あとは知らんwwwww ヤマハのルータrtx1000を利用しています。 pppopの設定をしてipも表示してnttの終端pr5000kiとの通信は確立しているみたいなのですがインターネットに繋ごらないのはどこの設定を見ればよいでしょうか? rtx1000のpppopを設定せずpr5000kiの設定をすればインターネットに繋がります。 >>267 「インターネットにつながらない」とは? 1.IP指定のpingかが通らない 2.ホスト指定のpingが通らない 3.ブラウザが使えない >>268 申し訳ございません。 RTX1000を 192.168.1.2 PR5000KIを 192.168.1.1だとしますと。 RTX1000に繋いだPCからは、RTX1000とPR5000KIにpingは通りますが、 ブラウザが使えません。(googleが開かない) >>269 構成が分からん こんな感じか?何をどう繋いでいるのか教えてくれ Internet---[PR500KI 192.168.1.1/24]---[192.168.1.2/24 RTX1000 192.168.x.x/24]---[192.168.x.x/24 PC] RTX1000はLAN2 or LAN3がPR500KIにつながっていて、LAN3にPCがつながってる状態の認識でよい? RTX1000のPC側のIPアドレスと、PCのIPアドレスを教えて PR500KIはPPPoEブリッジを有効にしている? PPPoEブリッジの設定が入ってる? ルターのIP設定、特にgatewayが間違ってる気がする ルータのPC側アドレスは192.168.1.2でPCたちは自動取得。 ルータの側は全てLan1にさしてます。pr5000kiは162.168.1.1です。ブリッヂは有効にしてます。 ブリッジにした時点で、 PR5000KIは無視しいいんだよ 例えばpr5000kiのブリッヂを有効にして、 PPPOPを設定せずルータ側でPPPOPを設定しても相手ルータ側(192.168.0.1)はおろかインターネットにも繋がらないのは、 やはりルータ側の設定なんですか? 無知で申し訳ないです、ただ原因がルータに絞られるだけでも死ぬほど助かります。ありがとうございます。 >>274 ブリッジにした時点でPR5000KIのIPアドレスは考えなくていい ハブだと思って差し支えない ルーターのGatewayがルーター自身になってる? >>275 自身のゲートウェイはpr5000kiのに合わせてました… >>277 試してみます。 ご助言ありがとうございました。 最後にまとめさせてください。 pr5000kiはブリッジ設定。PPPOP設定せず。 rtx1000はPPPOP設定してゲートウェイを自身のアドレスを指定。 本当に勉強になりました。 ありがとうございました。 昨日のRTX1000の人ですけど、デフォルトゲートウェイを自身と同様に192.168.1.2に変更したら今度はルータの管理画面に入れなくなりました。何か間違った箇所を変更したんでしょうか・・・ PPPOPの静的ルートを192.168.1.2/24に変更したのですが・・・ 一度初期化しないともう無理でしょうか。。。 >>281 今日は環境が整ってないのでまた明日試してみます 本当に申し訳ございません >>282 rtx1000のlan1にPR500KIもPCも全部つながってる構成なんだよね? >>デフォルトゲートウェイを自身と同様に192.168.1.2に変更したら これが気になる。もしかしてrtx1000に ip route default gateway 192.168.1.2 とか設定してる? ・"rtx1000"のデフォルトゲートウェイは「pp 1」を指定 ・"PC"のデフォルトゲートウェイは、rtx1000の「192.168.1.2」を指定 だよ あと、rtx1000のIPアドレスを192.168.1.2/24から変えてないのであれば 管理画面はlan1に接続した192.168.1.x/24のIPアドレスのPCから接続できる デフォルトゲートウェイは関係ない rtx1000で変更したのはデフォルトゲートウェイだけなの? ちなみにrtx1000のConfigは↓みたいな感じになると思われる(最低限必要な所だけ) ip route default gateway pp 1 ←デフォルトゲートウェイは「pp1」に向ける ip lan1 address 192.168.1.2/24 pp select 1 pp always-on on pppoe use lan1 ←「pp1」はlan1に割当て pp auth accept pap chap pp auth myname ユーザID パスワード ppp lcp mru on 1454 ppp ipcp ipaddress on ppp ipcp msext on ppp ccp type none ip pp mtu 1454 ip pp nat descriptor 1 ←「pp1」でnatをかける pp enable 1 nat descriptor type 1 masquerade 質問です 企業が密集してるビルの回線ってどれくらいの速度の回線引いてるのですか? ビルの中の一つの企業が回線引くとどれくらいの速度が出るのですか? >>283 pppop設定の静的ルートを192.168.1.2/24に設定しました。 arp ーaしてみても一覧に192.168.1.2がいるのに接続できないので初期化した方が良いのかな?と思った次第なのです。 >>285 マンションみたいにビル単位で共用してると思っているのだろうか… ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる