このスレッドは未解決です(解決したらこちらで解決済にしてください)
<<戻る

iptablesの設定方法 このメッセージに返信する
日時: 2014/10/17(Fri) 02:23
名前: OTH
URL:
いつも皆様に大変お世話になっております。
1ヶ月ほど前からある問題を抱えており、どうにも解決にいたらなかったのでこの場を借りてご助力をいただこうと思います。

とあるゲームをしておりましたが、1ヶ月ほど前からそれまで接続できていたゲームが突然接続できない状態に陥り、色々と解決に向けて試みをしてみましたがダメでした。


現在の自宅のネットワーク状態は以下のURLのようになっております。
http://gyazo.com/b6b0b5d62586b8622c33a7774bbb46f3

サーバーはCentOS5.10(64bit版) でルーター・DHCP・DNS・キャッシュサーバー(Squid)等を稼働させております。
自分が使用しているPC1で、通常のインターネット検索は問題なくできております。


接続できない原因としては、ゲーム側のパケット通信がうまくいっていないと考えられ色々調べると

以下のポートへの外向きの通信を許可してください。
TCP : アウトバウンドポート 28004番
UDP : アウトバウンドポート 16384〜18084番

以上のように設定するように指定しています。


PC1が通信できるようになるような外向きのiptableの書式をどのように書けばいいのでしょうか・・・
または、iptable以外に考えられる原因はあるのでしょうか・・・
初心者すぎる質問であるとはわかっていますが、どうにもiptableの設定はよくわかりません・・・

どうかお助けください。 よろしくお願いいたします。
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/17(Fri) 10:14
名前: 朝青龍
URL:
iptablesでどう設定してるのか知らないけど、一般的には
内→外へは素通しになってるんじゃないのかな?
(企業や学校などは規制してるだろうけど)
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/17(Fri) 10:27
名前: 通りすがり
URL:
>1ヶ月ほど前からそれまで接続できていたゲームが突然接続できない状態に陥り

あんまりiptablesは関係ないとおもうけどな。
セキュリティソフトなんじゃね?

俺が切り分けするのならiptablesの停止とか
ルータとかセキュリティソフトの停止とかできりわけするけどね。

wiresharkやtcpdumpで調べるのもいいかもな。
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/17(Fri) 11:41
名前: Dolphin
URL:
一度、クライアントPCと直結でプレイしてみたらいいと思います。
出来るのであればサーバーかAPの問題でしょうね。
次にAPをルーター化して接続してみる。
その次に全部つないだあと稼働させるサーバの絞込み。

基本的にアウトバンドは素通しさせるはずだから、繋がらないというのであればPC側のセキュリティ対策ソフトとかの問題だと思いますけど。
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/17(Fri) 21:38
名前: OTH
URL:
皆様有難うございます!

ルーターのiptableの設定は当サイトのものをそのまま使用させてもらっていますので、基本的にはアウトバンドは素通しになっているはずです。

APとして使用している無線LAN親機をルーターとして使用すると、すんなり起動してくれます。
直結プレイをしても問題なく起動されました。
しかし、サーバーをルーターとして使用すると、やはり起動できません。
なので、結果としてサーバーのルータに何らかの問題があると確定しました。


セキュリティソフトも切って試しても、ダメでした。
ちなみに、このサーバーには
・ファイル改竄検知システム導入(Tripwire)
・rootkit検知ツール導入(chkrootkit)
・アンチウィルスソフト導入(Clam AntiVirus)
以上のソフトを導入しています。
Clam AntiViruは停止してみましたが、やはりゲームは起動されませんでした。
残りのTripwire と chkrootkit が影響している可能せは考えられるのでしょうか・・・?

またエラーログや、アクセスログなどを見て情報を得たいのですが、どのファイルを見れば良いのでしょうか?
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/18(Sat) 01:39
名前: stranger
URL: http://ja.528p.com/
UPnPに対応させる必要があるのでは?

PREROUTINGとFORWARDを利用して
新規のパケットをローカルマシンに届ける設定

無線LAN親機はUPnPが有効になっていると思われるので
無効にして試してみる

iptables UPnP などでnet検索してみてください
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/20(Mon) 08:54
名前: OTH
URL:
stranger様ありがとうございます!!
無線LAN親機をルーターを使用し、UPnPが有効になっていたのを無効にして試してみましたが、ゲームは起動しましたので、UPnPの有効・無効は関係が無いものだと分かりました。

ですが、試しにCentOSルーターサーバーにUPnPを導入して稼働させてみましたが、やはりゲームは起動されませんでした。


そこで、試しにというこで以下のサイト
http://blog.akagi.jp/archives/15.html
これのiptables-nat.shをそもまま作成・実行してゲームの起動を確認してみますと、ゲームが起動されました。
狐につままれたような感じです・・・


しかし、新たな問題が発生しました。
CentOSサーバーはWebサーバー・ファイルサーバー・メールサーバーなども稼働させているのですが、外部からのアクセスができないようになってしました・・・
また、Squidで透過プロキシを設定していたのですが、透過プロキシでなくなってしまい、Windwos側でプロキシサーバーの設定を行うと接続はできる状態となりました。


当サイトの
ファイアウォール構築(iptables) :http://centossrv.com/iptables.shtml
IPマスカレード&ファイアウォール設定:http://centossrv.com/linux-router.shtml


これを以前まで使用しており、外部からのアクセス・透過プロキシの問題はありませんでした。
また、iptables-router.shを実行しても、iptables-nat.shのほうが優先されているような状態です。



/etc/sysconfig/iptables では以下のような設定になっています。

# Generated by iptables-save v1.3.5 on Mon Oct 20 07:13:32 2014
*nat
:PREROUTING ACCEPT [898:55839]
:POSTROUTING ACCEPT [1893:125165]
:OUTPUT ACCEPT [1552:104673]
COMMIT
# Completed on Mon Oct 20 07:13:32 2014
# Generated by iptables-save v1.3.5 on Mon Oct 20 07:13:32 2014
*filter
:INPUT DROP [62:6468]
:FORWARD ACCEPT [6827:405649]
:OUTPUT ACCEPT [82524:112489060]
-A INPUT -i lo -j ACCEPT
-A INPUT -s 127.0.0.0/255.0.0.0 -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -d 127.0.0.0/255.0.0.0 -o ppp0 -j DROP
-A OUTPUT -d 10.0.0.0/255.0.0.0 -o ppp0 -j DROP
-A OUTPUT -d 172.16.0.0/255.240.0.0 -o ppp0 -j DROP
-A OUTPUT -d 192.168.0.0/255.255.0.0 -o ppp0 -j DROP
COMMIT
# Completed on Mon Oct 20 07:13:32 2014


現在のゲームができる状態を維持しつつ、外部からのサーバーへのアクセス・透過プロキシの設定をどのファイルにすればよいのか教えていただけたらと思います。

もうちょっとで解決できそうですので、あと少しだけお力をお貸しください!
どうかよろしくお願いいたします!



[追記]
外部からのアクセスはできるようになりました。
iptable-nat.sh に
iptable -A INPUT -i $WAN -p tcp --dport 80 -j ACCEPT
のように、追加をして再読み込みをすることで外部からのアクセス問題は解決できました。


しかし、依然としてSquidの透過プロキシの問題が残っています。
ポート解放と同じような感じで
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
と設定したら、透過プロキシとしては機能してくれますが、今度はゲームが起動できなくなりました。
逆に、透過プロキシとして使用しないように設定すれば、ゲームは起動されます。

以上、追加で確認できたことです。
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/22(Wed) 15:53
名前: Ta-chang
URL:
iptables-nat.shの中身を見ていないので憶測ですが、
スクリプト名からするにNAT越え出来ないせい
(IPマスカレードの問題)ではないですか?

Cisco系のルータなど用意出来ればNAPT
(あるいはPAT)の手法などで労せずとも
すんなり解決出来そうですが・・・。
記事編集 編集
Re: iptablesの設定方法 このメッセージに返信する
日時: 2014/10/23(Thu) 06:21
名前: stranger
URL: http://ja.528p.com/
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
の設定をとめたときに
IEの設定でport 3128(sqid)を利用して接続できるの?

中途半端でゴチャゴチャになってるようなきがしますけど
sqidを利用していないの詳細はわかりませんので、あしからず
記事編集 編集
件名※必須
名前※必須
URL
任意のパスワード (投稿後のコメント修正・削除時に使用)
画像認証※必須 投稿キー(画像で表示されている数字を入力)
コメント※必須

※質問を投稿後に自己解決された場合は、原因と行った対処を具体的に書き込み下さるよう、よろしくお願いします。

- WEB PATIO -