- ベストアンサー
CATV回線にてVinelinux3.1をルータとして使いたい
余っているPCにVinelinux3.1を入れ、それをルーター として使用したいと考えています。 eth0をCATV回線と接続し, eth1はDHCPを起動して HUBに接続しています。 Network構成は以下の通りです。 ------------ CATV Modem ------------ ↑↓eth0 ------------- (Vinelinux3.1) ルータPC ------------- ↑↓ eth1 ------------ HUB ------------ ↑↓ --------------------------- WindonsXP & VineLinux3.1 --------------------------- ルータPCの端末から"ifconfig"にてeth0,eth1ともに端末に表示されました しかし・・・・ ルータPCからWindowsXPに対するpingとLocalのLinuxからWindowsXPに対するpingが通りませんでした。 (それ以外のpingは通りました。) 質問その1・・・・ この状態は何が原因なのでしょうか?? 以下、関係しそうな設定ファイルです。 /etc/dhcpd.conf ------------------------------------------------ ddns-update-style none; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.200; option routers 192.168.0.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; } ------------------------------------------------ /etc/sysconfig/network-script/ifcfg-eth1 ------------------------------------------------ DEVICE=eth1 IPADDRESS=192.168.0.1 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 ONBOOT=yes ------------------------------------------------ ぜひぜひ皆様からのご指摘、よろしく宜しくお願いいたします!!!
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
いろんな問題が重なっているようなので1つずつ片付けた方が良いでしょう。 まずは、eth0にアドレスが割り当てられない件。 (1) eth1のNICを挿さずにeth0だけで立ち上げるとアドレスは割り当てられますか? (2) NICを2枚挿しするときにカーネルパラメータ(ether=0,0,eth1)を設定する必要があるかと思いますが、設定されてますか?
その他の回答 (1)
- umota
- ベストアンサー率46% (150/324)
気になったことを述べさせていただきます。 詳しくはインターネット検索等で調べてください。 CATV が複数 HOST の接続を許可していること。 eth0 はグローバルアドレス? (eth0 と eth1 のネットワークが異なること) dhcp サービスを eth1 に割り当てる。(/etc/sysconfig/dhcp) # LAN 内の host 同士で通信するのになぜ dhcp を使うのか? ルーティングを有効にする。(/proc/sys/net/ipv4/ip_forward) iptables でマスカラーデ等の設定。 # プライベートアドレス、不必要なポートのフィルタリングも LAN 用の DNS を立ち上げると便利です。 # グローバルにはキャッシュ
- 参考URL:
- http://www.searchdesk.com/
補足
ご返答ありがとうございます!! >eth0 はグローバルアドレス? (eth0 と eth1 のネットワークが異なること) はい。仰るとおりです。eth0はCATVのDHCPサービスによるIP Addressの 自動割り当てを期待していますが、なぜか割り当てられていません・・・。 ("ifconfig"にてeth0のIP Addressが表示されません。) >dhcp サービスを eth1 に割り当てる。(/etc/sysconfig/dhcp) 質問の記述不足ですみません。 DHCP起動時にインターフェースの指定をしています。 /etc/sbin/dhcpd -cf /usr/dhcpd.conf -lf /var/state/dhcp/dhcpd.leases eth1 >LAN 内の host 同士で通信するのになぜ dhcp を使うのか? LocalにあるVinelinuxPCを将来的にwwwサーバとして、WindowsXP PCをクライアントPCとして使うつもりです。 確かに、IP固定でもよいのですが勉強のためにDHCPを使ってみました。 >ルーティングを有効にする。(/proc/sys/net/ipv4/ip_forward) これも質問の記述不足でしたね・・・。 RedHat系は/etc/sysconfig/networkにFORWARD_IPV4=yesを追加すればよいとの事でしたので 既に記述済みです。 >iptables でマスカラーデ等の設定。 現状、pingを通したいのでINPUT, OUTPUTともにDROPポリシーとして iptables -A FORWARD -i eth1 -j ACCEPT iptables -A FORWARD -i lo -j ACCEPT iptables -A INPUT -p icmp -j ACCEPT iptables -A FORWARD -p icmp -j ACCEPT を設定しましたが、pingが通らない状態に変化はありませんでした。
補足
ご返答ありがとうございます!!! ご指摘通り、まずはeth0にアドレスが割り当てられない件を解決したいと思います。 とりあえずpingの件はまた後ほどTryしてみます。 (1) eth1のNICを挿さずにeth0だけで立ち上げるとアドレスは割り当てられますか? 早速、eth1のNIC(PCIMCAカード)を抜き取り、eth0を挿した状態でルータPCを再起動してみました。 しかし、"ifconfig"にてeth0は表示されましたがやはりIP Addressは割り当てられていませんでした・・・。 (2) NICを2枚挿しするときにカーネルパラメータ(ether=0,0,eth1)を設定する必要があるかと思いますが、設定されてますか? し、してません・・・・。 早速やってみました! /etc/lilo.confに以下の記述を追加しました。 append = "ether=0,0,eth1" 再起動後、"ifconfig"にてeth0を確認しましたが、やはりIP Addressが 割り振られていませんでした・・・。 しかし、上記の設定は複数NICを認識させるのには必須だったのですね。一歩前進できました!