2003年07月06日

ガリレオセットアップ(2)

昨日一日つぶしてやっとこLANに組み込めたのでご報告

とりあえず、最初に建てたプラン通り試してみたので、以下で順を追ってみてみます。

  1. LAN側のサブネットは既存LANサブネットと同じにしてWAN側をDHCPにしてルータが配っているDHCPを食べさせてみる
    予想通りダメでした(笑)<DHCPで取得したものがLANと一緒だと、LAN側のIPアドレスが必ず変更になる
  2. しょうがないのでWAN側のサブネットを既存LANと同じにしてLAN側にはWindows2000のIPエイリアス機能を使ってNICにもう一つのサブネットのIPを持たせて対応する
    これ簡単にうまくいきました。

    まず構成は次の通りです
    構成図
    (ちなみにxxxは既存のサブネットの番号でyyyはガリレオのために新たに作るサブネット番号です)

    で、Windowsの設定はこんな感じ(Windows2000での実行例)
    コンパネから「ネットワークとダイアルアップ接続」の設定を開く
    galireo_02_20.gif
    次にローカルエリア接続のプロパティを開く
    galireo_02_21.gif
    「インターネット プロトコル(TCP/IP)」を開いて次の画面の右下にある「詳細設定」ボタンを押す
    galireo_02_22.gif
    すると「TCP/IP 詳細設定」の画面が出てくるのでIPアドレスの方の追加ボタンを押して

    IPアドレス:192.168.yyy.100
    サブネットマスク:255.255.255.0
    などと指定すれば完了
    あとは、「Media Palette」の本体IP設定を192.168.yyy.1などにしてアクセスすれば普通に使えるようになり、またインターネットを利用した機能もすべて使用可能になります。
    (サーバ系の機能が使えるかどうかは上位のルータの設定に依存しますが)

    けど、この構成じゃDHCPの場合いちいち切り替えないといけないし、マシン毎に設定を行うのが面倒なんで結局3番を試すことに。

  3. WAN側を別サブネットにしてサーバでIPエイリアス+ルーティングしてがんばる
    こっちの構成図はこんな感じ
    galireo_02_3.gif
    で、まず最初にLinuxにIPエイリアスをやる方法ですが、これはWindowsと同じぐらい簡単
    $ su
    # cd /etc/sysconfig/network-scripts/
    # cp ifcfg-eth0 ifcfg-eth0:0
    # vi ifcfg-eth0:0

    --------------
    DEVICE=eth0:0
    BOOTPROTO=static
    BROADCAST=192.168.yyy.255
    IPADDR=192.168.yyy.100
    NETMASK=255.255.255.0
    NETWORK=192.168.yyy.0
    ONBOOT=yes
    --------------

    # /etc/init.d/network restart


    これでeth0:0という名前でガリレオ用のサブネットのIPエイリアスを持ったインターフェースができました。
    この状態で試しに
    ping 192.168.yyy.1

    をしてみると・・・通らない(;´д`)ノ
    失敗したかなぁと思って確認のために
    ping 192.168.xxx.20

    をしてみても・・・通らない(;;;´д`)ノ
    で、本体死んでるかなぁと思って見に行っても普通に動いているチックだし、そもそもWindowsマシンからは普通にネット越しにテレビが見れるので試しに
    telnet 192.168.xxx.20 80

    とかでテストしても通らない・・・

    これでてっきりLinux側の設定の問題化と勘違いして数時間ハマりましたが、結果的に↓の設定が原因だったことが判明
    galireo_02_30.gif

    でもさぁ、
    galireo_02_31.gif
    なんかLAN側もこの設定効いて要るんだけど気のせい?(苦笑)

    まぁ、とりあえずIPエイリアスも無事設定できたので、次はルーティングのためにiptablesの設定
    具体的には

    # ガリレオ用転送設定
    iptables -A FORWARD -i eth0 -s 192.168.yyy.1/32 -j ACCEPT
    iptables -A FORWARD -o eth0 -d 192.168.yyy.1/32 -j ACCEPT
    iptables -t nat -A POSTROUTING -s 192.168.yyy.1/32 -o eth0 -j LOG --log-level info --lo
    g-prefix "IPTABLES FW gali:"
    iptables -t nat -A POSTROUTING -s 192.168.yyy.1/32 -o eth0 -j SNAT --to eth0のIP
    # マスカレードを許可する。
    echo 1 > /proc/sys/net/ipv4/ip_forward
    上記をシェルか何かで実行してやれば無事ルーティングを開始してくれます。

    ちなみに、この設定では外部からWANのポートにアクセスできませんが、自分的に今は必要ないので設定してません。
    必要な人は別途iptablesでDNATを設定してください。

    これで、LANの中からは追加設定なしでガリレオがみれてさらに番組表のネット更新とかも可能になりました( ̄▽ ̄)ノ

    次は使い方覚えないとなぁ。
    にしても今回の設定は久々にドツボだったなぁ<Linuxサーバが運用中で無茶ができなかったのが敗因

Posted by Takuchan at 2003年07月06日 10:27 | トラックバック(0)