3流プログラマのメモ書き

元開発職→現社内SEの三流プログラマのIT技術メモ書き。 このメモが忘れっぽい自分とググってきた技術者の役に立ってくれれば幸いです。(jehupc.exblog.jpから移転中)

(Solaris)NICが2つある場合のIP設定

VMware ESXi でNICが2つあるSolarisの仮想サーバを作成したんですが、どうやらSolarisのセットアップ中では一つのNICしか有効にならなかったようです。

ifconfig叩くとこうなっていました。

# ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

e1000g0: flags=1000843 mtu 1500 index 2

inet 192.168.125.67 netmask ffffff80 broadcast 192.168.125.127

ether 0:c:29:44:aa:e6

さて、もう一つのNICを別セグメント用として使いたいんですが、その設定をメモしておきます。

まず、もう一つのNICの名前を確認する方法ですが、dladm show-dev で確認できます。

# dladm show-dev

e1000g0 リンク: up 速度: 1000 Mbps デュプレックス: full

e1000g1 リンク: unknown 速度: 0 Mbps デュプレックス: half

不明だったNICが e1000g1 という名前ということがわかりました。

無効化されているので、リンク状態が unknown になっています。

このデバイスを有効化してやります。有効化は ifcofnig の plumb オプションを使います。

# ifconfig e1000g1 plumb

改めて ifconfig と dladm show-dev で見てみると以下のように表示されるようになりました。

# ifconfig -a

lo0: flags=2001000849 mtu 8232 index 1

inet 127.0.0.1 netmask ff000000

e1000g0: flags=1000843 mtu 1500 index 2

inet 192.168.125.67 netmask ffffff80 broadcast 192.168.125.127

ether 0:c:29:44:aa:e6

e1000g1: flags=1000842 mtu 1500 index 5

inet 0.0.0.0 netmask 0

ether 0:c:29:44:aa:f0

# dladm show-dev

e1000g0 リンク: up 速度: 1000 Mbps デュプレックス: full

e1000g1 リンク: up 速度: 1000 Mbps デュプレックス: full

次にIPアドレスの設定をしていきます。

まず、/etc/inet/ipnodes でホスト名とIPアドレスの対応に追加します。

(ホスト名はNIC毎にユニークにしないといけません)

# vi /etc/inet/ipnodes

#

# Internet host table

#

::1 localhost

127.0.0.1 localhost

192.168.125.67 SunRaySRV3 loghost

192.168.135.3 SunRaySRV3-e1000g1   ←追加

サブネットを設定します。

# vi /etc/inet/netmasks

# The netmasks file associates Internet Protocol (IP) address

# masks with IP network numbers.

#

# network-number netmask

#

# The term network-number refers to a number obtained from the Internet Network

# Information Center.

#

# Both the network-number and the netmasks are specified in

# "decimal dot" notation, e.g:

#

# 128.32.0.0 255.255.255.0

#

192.168.125.0 255.255.255.128

192.168.135.0 255.255.255.0   ←追加

そして、インターフェイスとホスト名を結びつけます。

/etc/hostname.インターフェイス のファイル内に、ホスト名を記述します。

例えば最初から認識していたNICの場合、以下のようになっていました。

# vi /etc/hostname.e1000g0

SunRaySRV3

今回、e1000g1 というインターフェイスが増えたので、/etc/hostname/e1000g1 というファイルを作成し、以下のように記述します。

# vi /etc/hostname.e1000g1

SunRaySRV3-e1000g1

これで再起動します。

デフォルトゲートウェイDNSサーバのアドレスの設定はSolaris10でIPを変更する方法で書いているとおりです。

補足:

なお、今回はサーバの物理NIC(Gbps対応)を、100MbpsのL2につないでいたんですが、VMWareネットワーク上では仮想スイッチを経由して繋ぎにいっているため、仮想OS(Solaris)側からは1Gbpsで接続されているように見えるようです。(仮想スイッチ~L2スイッチ間のリンク状態はvShere Clientの"構成"→"ネットワーク"で確認できます。どうもVMWareのオートネゴシエーションは稀に100Mbps半二重とかにしてしまうようなので、固定にしたほうが安全かもしれません)

参考:

ネットワークを調査する 50 の方法

Solaris10:未構成NICをOSインストール後に構成する方法

UNIXサーバ Solaris Technical Park Solaris 逆引きコマンド一覧 ネットワークの設定/表示 ネットワークインターフェイスの設定 : 富士通