network command

目次|**|

network command ifconfig and route 001

pc1

/etc/rc.d/rc.inet1

まず”/etc/rc.d/rc.inet1” を 見てみよう 抜粋の 部分

$ cat -n /etc/rc.d/rc.inet1 | grep ifconfig
    11  /sbin/ifconfig lo 127.0.0.1
    35    /sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
    44    /sbin/ifconfig eth1 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
$ cat -n /etc/rc.d/rc.inet1 | grep route
    12  /sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
    64    # /sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0
    66     /sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1

これから わかる事は ”/sbin/ifconfig” というものと ”/sbin/route ” というもので ネットワークの 設定を しているようだ ということです。今 回の 計算機には NIC が 2枚 取り付けられています。最初の”# ”の あ るものを 除外すると

/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
/sbin/ifconfig eth1 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
/sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1

ここで ”${IPADDR}”、”${BROADCAST}”、”${NETMASK}” と ” ${GATEWAY}”は 別の 所で 定められていると かんがえられます。NIC が 2枚 取り付けられている計算機を pc1 とします。またこのファイルで ”127.0.0.0” という クラス A の 場合は 固定の 数字が 与えられていて ”eth0”と ”eth1” に 関する物は ある意味 汎用の 用途に 対応しているようです。つまり 場合に より きめられるが ”lo”に 関しては 固定しているようです。では NIC が 1 枚の 計算機は どうなっているでしょうか

pc2

/etc/rc.d/rc.inet1

NIC が 1枚の 場合の ”/etc/rc.d/rc.inet1” の 抜粋を 見てみましょう

$ ssh -l mm 192.168.0.8
Password: 
$ cat -n /etc/rc.d/rc.inet1 | grep ifconfig
    11  /sbin/ifconfig lo 127.0.0.1
    35    /sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
$ cat -n /etc/rc.d/rc.inet1 | grep route
    12  /sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
    55    # /sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0
    57     /sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1

これも 同じ様に 考えると

/sbin/ifconfig lo 127.0.0.1
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK}
/sbin/route add default gw ${GATEWAY} netmask 0.0.0.0 metric 1

こんどは ”lo”に 関しては 同じで ”eth0”だけの 設定項目 のみ となっ ています。 当り前ですが この計算機を pc2 とします。

ネットワークの 構成

pc1、 pc2 の ネットワーク の 構成の略図 は この様なものです

adsl-modem ---- hub----pc1;eth0:IP adr:192.168.0.5
                 |     pc1;eth1:IP adr:192.168.2.1
                 |
                  ------pc2;eth0:IP adr:192.168.0.8

これを パターン1 並列 とします、 これが 現状の 構成ですが pc1と pc2が 従属 に 接続 される 場合も 考えられます これは このような ものです。

adsl-modem ---- hub----pc1;eth0:IP adr:192.168.0.5
                       pc1;eth1:IP adr:192.168.2.1 -----pc2;eth0:IP adr:192.168.2.8

これを パターン2 直列 とします、これは対比するために 此処に 記載して いますが まず パターン 1並列の 場合を みてゆきます。

IP routing table

pc1

pc1 の IP ”routing table”を 見ておきます

$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.2.0     0.0.0.0         255.255.255.0   U         0 0          0 eth1
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 eth0

pc2

pc2 の IP ”routing table”を 見ておきます

$ netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.0.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U         0 0          0 lo
0.0.0.0         192.168.0.1     0.0.0.0         UG        0 0          0 eth0

pc1 に ついて 何で NIC カード は 2枚も いるの 必要無いじゃん という のは 言わないことに しておきます。

$ cat /proc/sys/net/ipv4/ip_forward
1

まあ pc2 の eth1 側に 他の 計算機が ぶら下がれるように 準備 している とでも 考えて おいて ください。

ping test

pc1

pc1 に 関して

$ ping -c1 127.0.0.1                /*  自分自身  */
PING 127.0.0.1 (127.0.0.1): 56 octets data
64 octets from 127.0.0.1: icmp_seq=0 ttl=64 time=0.1 ms

--- 127.0.0.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
$ ping -c1 192.168.0.5                /*  eth0 側  */
PING 192.168.0.5 (192.168.0.5): 56 octets data
64 octets from 192.168.0.5: icmp_seq=0 ttl=64 time=0.0 ms

--- 192.168.0.5 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.0/0.0/0.0 ms
$ ping -c1 192.168.2.1                /*  eth1 側  */
PING 192.168.2.1 (192.168.2.1): 56 octets data
64 octets from 192.168.2.1: icmp_seq=0 ttl=64 time=0.1 ms

--- 192.168.2.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
$ ping -c1 192.168.0.8                /*  pc2 側  */
PING 192.168.0.8 (192.168.0.8): 56 octets data
64 octets from 192.168.0.8: icmp_seq=0 ttl=64 time=6.7 ms

--- 192.168.0.8 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 6.7/6.7/6.7 ms
$ ping -c1 192.168.0.1               /*  adsl-modem 側  */
PING 192.168.0.1 (192.168.0.1): 56 octets data
64 octets from 192.168.0.1: icmp_seq=0 ttl=255 time=0.7 ms

--- 192.168.0.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.7/0.7/0.7 ms

pc2

pc2 に 関して

$ ping -c1 127.0.0.1                /*  自分自身  */
PING 127.0.0.1 (127.0.0.1): 56 octets data
64 octets from 127.0.0.1: icmp_seq=0 ttl=64 time=0.1 ms

--- 127.0.0.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
$ ping -c1 192.168.0.8                /*    eth0 側   */
PING 192.168.0.8 (192.168.0.8): 56 octets data
64 octets from 192.168.0.8: icmp_seq=0 ttl=64 time=0.1 ms

--- 192.168.0.8 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.1/0.1/0.1 ms
$ ping -c1 192.168.0.5               /*   pc1  eth0 側   */
PING 192.168.0.5 (192.168.0.5): 56 octets data
64 octets from 192.168.0.5: icmp_seq=0 ttl=64 time=0.3 ms

--- 192.168.0.5 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.3/0.3/0.3 ms
$ ping -c1 192.168.0.1              /*   adsl-modem 側   */
PING 192.168.0.1 (192.168.0.1): 56 octets data
64 octets from 192.168.0.1: icmp_seq=0 ttl=255 time=0.7 ms

--- 192.168.0.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.7/0.7/0.7 ms
$ ping -c1 192.168.2.1             /*   pc1  eth1 側   */
PING 192.168.2.1 (192.168.2.1): 56 octets data
64 octets from 192.168.2.1: icmp_seq=0 ttl=64 time=0.8 ms

--- 192.168.2.1 ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 0.8/0.8/0.8 ms

この場合は 特に 問題なく 疎通が ある ということです。

予告

この 状況で pc1 の /etc/rc.d/rc.inet1 を 削除 して pc1 を 再起動し ネッ トワークの 構築を してみよう そんな 大層な ことです か?

にゃんたろう 拝!

2005年11月30日 (水) 21:46:55 JST 作成

目次 |**|


network command

Copyright © 2004.-2007. nyantarou All Rights Reserved.