ラベル Network の投稿を表示しています。 すべての投稿を表示
ラベル Network の投稿を表示しています。 すべての投稿を表示

月曜日, 3月 05, 2012

NICのデバイス名を固定

[概要]
NICのデバイス名を固定します。
[詳細]
Linuxでは、ブートのタイミングや増設カードの追加によって、NICがKernelから認識される順序が変ってしまうことがあります。udevを使い、これを固定化する方法を説明します。

設定方法:
"/etc/udev/rules.d/70-persistent-net.rules"ファイルに、デバイス名を固定するNICを下記の要領で列記します。記載後、OSをリブートすると設定が反映されます。
KERNEL="eth*", SYSFS{address}=="マックアドレス", NAME="デバイス名"

設定サンプル:
root@ubuntu:~# vi /etc/udev/rules.d/70-persistent-net.rules
KERNEL=="eth*", SYSFS{address}=="52:54:00:cc:52:d1", NAME="eth0"
KERNEL=="eth*", SYSFS{address}=="52:54:00:30:61:72", NAME="eth1"
動作確認:
root@ubuntu:~# ifconfig
eth0 Link encap:イーサネット ハードウェアアドレス 52:54:00:cc:52:d1
inetアドレス:192.168.122.211 ブロードキャスト:192.168.122.255 マスク:255.255.255.0
inet6アドレス: fe80::5054:ff:fecc:52d1/64 範囲:リンク
UP BROADCAST RUNNING MULTICAST MTU:1500 メトリック:1
RXパケット:1271 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:949 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:1000
RXバイト:122090 (122.0 KB) TXバイト:130943 (130.9 KB)

eth1 Link encap:イーサネット ハードウェアアドレス 52:54:00:30:61:72
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 メトリック:1
RXパケット:89 エラー:0 損失:0 オーバラン:0 フレーム:0
TXパケット:1596 エラー:0 損失:0 オーバラン:0 キャリア:0
衝突(Collisions):0 TXキュー長:1000
RXバイト:10831 (10.8 KB) TXバイト:110510 (110.5 KB)
割り込み:10 ベースアドレス:0xa000
以上で、NICのデバイス名の固定方法の説明を終わります。

火曜日, 12月 08, 2009

Linux ホスト名とIPアドレスの変更

[概要]
Linuxでの恒久的なホスト名とIPアドレスの変更方法を説明します。
[詳細]
Red Hat系(RHEL, CentOSなど)、Debian系(Debian, Ubuntuなど)それぞれについて、設定ファイル変更によるホスト名とIPアドレスの変更方法を説明します。
  • Red Hat系
    • ホスト名の変更
      設定ファイル"/etc/sysconfig/network"の中にある"HOSTNAME"の値を変更します。

      [root@linux01 ~]# vi /etc/sysconfig/network
      NETWORKING=yes
      NETWORKING_IPV6=no
      HOSTNAME=hostname # ここを変更

    • IP アドレスの変更
      ディレクトリ"/etc/sysconfig/network-scripts/"にある"ifcfg-インタフェース名"(ex. ifcfg-eth0)ファイルを編集します。
      [root@linux01 ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
      DEVICE=eth0
      ONBOOT=yes
      BOOTPROTO=none
      IPADDR=192.168.1.1
      NETMASK=255.255.255.0
      HWADDR=00:08:02:91:E6:6F

      • DEVICE
        デバイス名を指定します。この値はファイル名と一致させてください。
      • ONBOOT
        OSの起動時にインタフェースも起動するか否かを設定します。yes:自動起動する。no:自動起動しない。
      • BOOTPROTO
        ネットワークサービスを使用して、IPアドレスを取得する際のプロトコルを選択します。
        選択できる値:bootp, dhcp, none
        固定IPを使用する場合には"none"を指定します。
      • IPADDR
        NICのIPアドレスを指定します。BOOTPROTOに"none"をした時のみ有効。
      • NETMASK
        ネットマスクを指定します。BOOTPROTOに"none"をした時のみ有効。
      • HWADDR
        NICのMACアドレスを指定します。この値が指定されていない場合には、OSで見つかった順に、eth0からNICが割り当てられます。
      ファイルの編集後、ネットワークを再起動すると、新しいIPアドレスが有効になります。
      [root@linux01 ~]# service network restart インターフェース eth0 を終了中: [ OK ] ループバックインターフェースを終了中 [ OK ] ネットワークパラメーターを設定中: [ OK ] ループバックインターフェイスを呼び込み中 [ OK ] インターフェース eth0 を活性化中: [ OK ]

  • Debian系
    • ホスト名の変更
      "/etc/hostname"ファイルを変更します。
      user@ubuntu:~$ sudo vi /etc/hostname
      hostname # ここを変更

    • IP アドレスの変更
      "/etc/network/interfaces"ファイルを編集します。

      user@ubuntu:~$ sudo vi /etc/network/interfaces
      # This file describes the network interfaces available on your system
      # and how to activate them. For more information, see interfaces(5).

      # The loopback network interface
      auto lo
      iface lo inet loopback

      # The primary network interface
      auto eth0
      iface eth0 inet static
      address 192.168.1.2
      netmask 255.255.255.0
      gateway 192.168.1.254

      auto eth2
      iface eth2 inet dhcp

      • auto インタフェース名
        NICのインタフェース名を指定します。
      • iface インタフェース名 inet プロトコル
        インタフェース名:上記で指定したインタフェース名と同じものを指定します。
        プロトコル:IPアドレスを取得する際方法を指定します。static(固定IP),dhcp, bootpなどを指定します。
      • address
        IPアドレスを指定します。プロトコルをIPアドレスにした場合のみ
      • netmask
        ネットマスクを指定します。プロトコルをIPアドレスにした場合のみ
      • gateway 192.168.1.254
        デフォルト・ゲートウェイを指定します。プロトコルをIPアドレスにした場合の
      ファイルの編集後、ネットワークを再起動すると、新しいIPアドレスが有効になります。
      "/etc/network/interfaces" 19L, 438C 書込み user@ubuntu:~$ sudo /etc/init.d/networking restart * Reconfiguring network interfaces... * Disconnecting iSCSI targets ...done. * Stopping iSCSI initiator service ...done. * Starting iSCSI initiator service iscsid ...done. * Setting up iSCSI targets ...done. * Setting up iSCSI targets ...done. [ OK ]

以上で、ホスト名、IPアドレスの恒久的な変更方法についての説明は、おしまいです。

金曜日, 9月 04, 2009

qemu, kvmでブリッジ接続 (RHEL, CentOS編)

[概要]
KVMやqemuを使用する際に、仮想マシンのネットワーク用のブリッジを作成する方法を説明しています。

[詳細]
Xenではインストール時にブリッジ・ネットワークが作成されますが、KVMやqemuではlibvirtによるNAT接続の仮想ネットワークが作成されるだけです。ホストと同じネットワークに接続する場合にはブリッジを作成しなければなりません。ubuntu, Debianの設定方法については、こちらを参照ください。

では、そのブリッジの作成方法について説明します。


  1. 事前準備
    1. bridge-utilsパッケージのインストール
      ブリッジを作成するためにbridge-utilsパッケージをインストールします。
      bridge-utilsは、ディストリビューションに添付されていますので、媒体からでもネットワークでもインストールが出来ます。
      [root@localhost ~]# rpm -Uvh bridge-utils-1.1-2.i386.rpm
      [root@localhost ~]# yum install bridge-utils
    2. サービスの設定
      ブリッジ接続を使用する場合には、NetworkManagerを使用することが出来ません。NetworkManagerではなく従来のnetworkのサービスを利用してください。

      [root@localhost ~]# chkconfig NetworkManager off
      [root@localhost ~]# chkconfig network on
      [root@localhost ~]# service NetworkManager stop
      [root@localhost ~]# service network start
  2. ネットワーク設定ファイルの編集
    1. ブリッジ用設定ファイルの作成
      ブリッジ用のインタフェースの設定ファイルを"/etc/sysconfig/network-scripts/ifcfg-ブリッジ名"というファイルを作成します。ブリッジ名は任意なものを付けることが出来ます。下記の例ではbr0としています。
      注意:"TYPE=Bridge"は、このまま記述してください。"B"が大文字、"ridge"は小文字。

      サンプル:
      • DHCPの場合
        [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-br0
        DEVICE=br0
        TYPE=Bridge
        BOOTPROTO=dhcp
        ONBOOT=yes
        DELAY=0
      • 静的なIPアドレスの場合
        [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-br0
        DEVICE=br0
        TYPE=Bridge
        BOOTPROTO=static
        BROADCAST=192.168.1.255
        IPADDR=192.168.1.3
        NETMASK=255.255.255.0
        NETWORK=192.168.1.0
        DELAY=0
    2. 物理NICの設定ファイルの編集
      ブリッジに対応するために、物理NICの設定ファイルも変更します。
      IPADDRやBOOTPROTOなど、ブリッジの設定ファイルに記載した事項を削除して、BRIDGEという値に作成するブリッジを指定します。
      下の例ではeth0にブリッジbr0を割り当てています。

      [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
      DEVICE=eth0
      HWADDR=00:16:76:D6:C9:45
      ONBOOT=yes
      BRIDGE=br0 # ここでブリッジを指定
  3. ネットワークの再起動
    ネットワークの再起動を行います。

    [root@localhost ~]# service network restart
  4. 動作確認
    ifconfigコマンドで正しく動作指定ことを確認します。

    [root@localhost ~]# ifconfig
    br0 Link encap:Ethernet HWaddr 00:30:13:44:21:0C
    inet addr:192.168.1.3 Bcast:192.168.1.255 Mask:255.255.255.0
    inet6 addr: fe80::230:13ff:fe44:210c/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:227787918 errors:0 dropped:0 overruns:0 frame:0
    TX packets:480250 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:0
    RX bytes:10513213904 (9.7 GiB) TX bytes:53615356 (51.1 MiB)

    eth0 Link encap:Ethernet HWaddr 00:30:13:44:21:0C
    inet6 addr: fe80::230:13ff:fe44:210c/64 Scope:Link
    UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
    RX packets:227788363 errors:0 dropped:0 overruns:0 frame:0
    TX packets:480794 errors:0 dropped:0 overruns:0 carrier:0
    collisions:0 txqueuelen:1000
    RX bytes:13702246848 (12.7 GiB) TX bytes:53691779 (51.2 MiB)
    Memory:deb00000-deb20000
  5. バーチャルマシンへのブリッジの指定
    • virt-manager
      バーチャルマシンの作成時のNetworkで"共有物理装置"にブリッジが表示され、バーチャルマシンをホストと同じネットワークに接続することが出来ます。

以上でブリッジの作成と接続は終了です。

水曜日, 1月 07, 2009

MSI Wind PCでCentOS5*使用する際にNICを有効にする

[概要]
MSI Wind PCへCentOS5* (RHEL5*)をインストールしたときに
ネットワークが使用できないときがあります。
その解決方法を説明します。
[詳細]
MSI Wind PCへCentOS5* (RHEL5*)をインストールした際に、
ドライバの読み込みに失敗してネットワークが使用が利用できなくなることがあります。
次の手順で正しくドライバを読み込むようにします。
  1. /etc/grub.confを編集して、pci=nommconfを追加します。
    title CentOS (2.6.18-92.1.22.el5)
    root (hd0,0)
    kernel /vmlinuz-2.6.18-92.1.22.el5 ro root=LABEL=/1 rhgb quiet pci=nommconf
    initrd /initrd-2.6.18-92.1.22.el5.img

  2. 1で解決しない場合はrealtekから最新のドライバを入手して、インストールを行います。
    # tar vjxf r8168-8.003.00.tar.bz2
    # cd r8168-8.003.00
    # make clean modules
    # make install
    # depmod -a
    # insmod ./src/r8168.ko
    # service network restart

カーネルをバージョンアップすると、再度読み込まれなくなります。
再度インストールするか、/etc/rc.localなどに読み込むためのスクリプトを作成してください。