• ベストアンサー

NIC毎のホスト名

素朴な疑問なのですが、NICが2枚の場合、それぞれにホスト名を設定できないのでしょうか? Solarisではhostnameファイルで設定できるようなのですが、 Linuxについてはネット検索してみましたが、みつけられませんでした。 もちろん、別サーバからアクセスするときはhostsファイルで設定できますが、自分自身に設定できないのかなぁと思った次第です。 ちなみに、centos5と6です。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4847/10260)
回答No.1

ホスト名は、コンピューターとしての名前という意味と、IPアドレスに結びついた名前の二面性があります。 後者の意味であれば、別々のIPアドレスに別々のホスト名を付けることは可能です。NICが1つでも複数のIPアドレスを設定すれば可能です。 前者の意味であれば1つしか設定できません。OS起動処理の中で、hostnameコマンドやsethostnameシステムコールで設定されます。

hakuyos
質問者

お礼

ありがとうございます。 私は当初「IPアドレスに結びついた名前」というイメージで質問させていただきました。 また、これを設定できれば、hostnameコマンドの結果は、アクセスしたIPアドレスに対応した名前になるのかなというイメージでした。 ですが、hostnameの結果は1つだけなんですね。 ちなみに、IPアドレス毎の名前はどのように設定するのでしょうか? ヒントだけでも頂けると幸いです。

その他の回答 (3)

noname#212058
noname#212058
回答No.4

回答No.2です。 そもそも、何のために NIC 毎に別々の名前を付けたいので しょうか? ネットワーク上で IPアドレスを名前で引けるようにするのは 『DNS の仕事』ですので、NIC 自体に名前を付ける必要が ありません。 DHCP や NETBIOS などのサービスを使う場合は、先にご紹介 したようなホスト名とは別の設定があります。

hakuyos
質問者

お礼

返信が遅くなり申し訳ありません。 今回の質問の背景を簡単に。 下記のように、ホストAとホストBがあり、それぞれにNICが2枚ずつあります。 <ホストA> ホスト名:HostA IPアドレス: xxx.xxx.xxx.100 ※IPax yyy.yyy.yyy.100 ※IPay <ホストB> ホスト名:HostB IPアドレス: xxx.xxx.xxx.200 ※IPbx yyy.yyy.yyy.200 ※IPby DNSには、各ホスト名にIPaxとIPbxを登録しています。 <DNS> xxx.xxx.xxx.100 HostA xxx.xxx.xxx.200 HostB ただ、ホストAとホストBの間は、IPayとIPbyで通信しています(hostsファイルにはお互いのIP用の名前を設定)。 <hosts(ホストA)> yyy.yyy.yyy.200 HostB-sub <hosts(ホストB)> yyy.yyy.yyy.100 HostA-sub ところが、この状況でホストAとホストBの通信を行うソフトにhostnameコマンドの結果を通知するものがあります。 そして、通知したhostname(HostAやHostB)が指すIPアドレスは IPaxやIPbxと認識してしまうので、実際に通信しているIPアドレスと異なるために、期待した動きをしなくなっていまいました。 もちろんhostsファイルを以下のように設定すると動くのですが、諸事情から【できれば】HostAやHostBが指すIPアドレスは変えたくなかったのです。 <hosts(ホストA)> yyy.yyy.yyy.200 HostB-sub HostB <hosts(ホストB)> yyy.yyy.yyy.100 HostA-sub HostA そこで「NIC毎にホスト名を設定できれば、アクセスされたIPアドレス毎にhostnameコマンドの結果が変わってくれて、この問題も解決できるんじゃないか」と考えて、この件を調べ始めました。 ただ、今回の質問で「ホスト名(hostnameコマンドの結果)は1つのみ」ということがわかりましたので、別の方法を検討したいと思います。 ありがとうございました。

  • notnot
  • ベストアンサー率47% (4847/10260)
回答No.3

No1です。 >ちなみに、IPアドレス毎の名前はどのように設定するのでしょうか? /etc/hosts に書けば、正引き(ホスト名→IPアドレス)も、逆引き(IPアドレス→ホスト名)も出来るはずです。 >hostnameコマンドの結果は、アクセスしたIPアドレスに対応した名前になるのかなというイメージでした。 sshでログインした場合だと、環境変数 $SSH_CONNECTION でアクセス先・元のアドレスがわかるので、それで逆引きすればわかるかと思います。

hakuyos
質問者

お礼

返信が遅くなり申し訳ありません。 ありがとうございました。

noname#212058
noname#212058
回答No.2

ホスト名とは読んで字の通りホストの名前ですから、NIC が何枚刺さっていようが、1つのホストにホスト名はひとつ です。 NIC毎に名前を付けたいとするのであれば、例えば『DHCP に対して送るホスト名』のことでしょうか。 これは ifcfg-eth0 ファイルに DHCP_HOSTNAME で記述 します。

hakuyos
質問者

お礼

ありがとうございます。 hostnameコマンドで取得できるホスト名は一つだけなのですね。 IPアドレス毎に設定できるイメージでした。 また、今回はDHCPではないので、 DHCP_HOSTNAMEではないかもしれません。 ですが、DHCPの場合はそのような設定ができるのですね。

関連するQ&A

  • 同一のホスト名で何か問題がありますか?

    サーバーを移行する際に、新しいサーバーを同一ホスト名。に設定(hostnameコマンド や/etc/hostsで)しておきたいのですが、ネットワーク上何かトラブルになることはありうるでしょか?

  • Solaris10のホスト名の変更

    こんにちは。 8年振りにSolarisをさわっています。 Solaris10のホスト名の変更を行いたいのですが、Solaris9のテキストに6つのファイルをすべて変更する必要があると書いてありました。これはSolaris10でもそうなのでしょうか。確認したところ、/etc/nodenameというファイルはありませんでした。現在DHCP接続にしているのですが、それでもホスト名の変更は行えますか。 ご回答お待ちしております。 bash-3.2# ls -la /etc/nodename /etc/nodename: No such file or directory bash-3.2# ls -la /etc/hostname* -rw-r--r-- 1 root root 1 Dec 27 11:42 /etc/hostname.e1000g0 bash-3.2# ls -la /etc/inet/hosts -r--r--r-- 1 root root 101 Dec 27 11:49 /etc/inet/hosts bash-3.2# ls -la /etc/net/ticlts/hosts -rw-r--r-- 1 root sys 239 Jan 22 2005 /etc/net/ticlts/hosts bash-3.2# ls -la /etc/net/ticots/hosts -rw-r--r-- 1 root sys 239 Jan 22 2005 /etc/net/ticots/hosts bash-3.2# ls -la /etc/net/ticotsord/hosts -rw-r--r-- 1 root sys 239 Jan 22 2005 /etc/net/ticotsord/hosts bash-3.2# cat /etc/inet/hosts # # Internet host table # ::1 localhost 127.0.0.1 localhost 192.168.236.129 unknown # Added by DHCP bash-3.2#

  • ホスト名変更による端末への影響

    こんにちは。 とあるLinuxサーバを運用しているのですが、 サーバには下記のエントリがあります。 >>「/etc/host」ファイル  136.198.153.154 TEST1W >>「/etc/sysconfig/network」ファイル  HOSTNAME=TEST1W 今回システム変更により、サーバにドメイン名を付けることに なりました。変更後は、下記の値になります。 >>「/etc/host」ファイル  136.198.153.154 TEST1W.test.co.jp TEST1W >>「/etc/sysconfig/network」ファイル  HOSTNAME=TEST1W.test.co.jp でここからがご相談ですが、10台の運用端末は、WindowsXPですが、 hostsファイルでLinuxサーバの名前解決をしています。 >>Windowsのhostsファイル  136.198.153.154 TEST1W サーバ変更後は、このhostsファイルも変更対象になるでしょうか?。 「ping TEST1W」はNGとなり、「ping TEST1W.test.co.jp」 になるかと考えているのですが・・。 アドバイスお願いします。

  • Linuxのホスト名って何の意味があるのでしょう?

    Linuxでサーバーの勉強を独学しているものです。 前から疑問に思っていて、最近ネットワークの仕組みなどを勉強して さらに混乱しているのがLinuxマシンにつけるホスト名です。 インストール時に設定したやつです。 DNSなどの設定をしていて、wwwやmailなどのホスト名(サブドメイン名)も全て同じマシンにつけてしまえるし(1台にいくつもホスト名をもてるってこと?)肝心のそのマシン自体のホスト名を使用する事がありません。 ネットワーク内でそのマシンを特定する為にうんぬんと書かれていた気がしますが、実際使う事がないような気がします。DNSでなくてhostsファイルで名前解決するにしてもホスト名と全然関係ない文字列とIPを関連づけても大丈夫ですし。 実際インストール時に設定したホスト名が何かの役に立つ事はあるのでしょうか?

  • LAN内専用のサーバに設定するホスト名

    LinuxをインストールしてLAN内専用のサーバを立てようと思うのですが Linuxをインストールする際に設定するホスト名は 公開しない場合はFQDNではなく任意のホスト名だけを設定するものなのでしょうか? 一般的にwindowsなどのクライアントに設定するホスト名のような感じでホスト名だけ。 そしてLAN内からアクセスするときは http://サーバのプライベートIP ftp://サーバのプライベートIP という形でアクセスさせるのが多いのでしょうか? それともLAN内に内向けDNSを立てるか、クライアントのhostファイルにホスト名=プライベートIPアドレスとさせて http://ホスト名 ftp://ホスト名 でアクセスさせる形が多いのでしょうか?

  • SPARC版solaris8でLAN接続できません。

    すみません。まったくの初心者なんですが、 WIN95端末とハブ経由でsolaris端末をLAN接続したいのですが、pingすら とおりません。 solaris側の設定は ・/etc/nodename hostname ・/etc/inet/hosts 192.168.1.2 hostname ・/etc/inet/netmasks 255.255.255.0 てな感じで設定しました。 しかしwin95でpingをとばしても返ってきません・・・ ifconfig -aでみると NICがlo0(127.0.0.1)しか表示されていません。NICがうまく認識されていないのでしょうか?それとも設定がおかしいのでしょうか? 初心者でまったくわかりません。おしえてくださいぃ。

  • DHCPでのホスト名とホスト機との対応付けについて

    現在、家庭内LAN上の複数のPCに固定IP・ホスト名を割り振って、各PCの /etc/hosts に記述して運用しています。 このたび、DHCPでLAN運用を試してみて、LAN上のPCとそのホスト名の対応の方法がわかりません。 基本的なことですが、DHCPのLANにおいて、LAN内の他のホストを特定するのはどうすればよいのでしょうか。 2008年1月14日 機材  DHCPサーバー:市販のブロードバンドルーター(PLANEX BLW-54CW2)のDHCPサーバー機能  DHCPクライアント:Vine Linux4.1パソコン やってみたこと  クライアントパソコンの方でホスト名を設定し、それをDHCPサーバーに渡すことはできた。  (ブロードバンドルーター設定画面にホスト名・IPアドレス・MACアドレスが表示された)  DHCPサーバーからクライアントパソコンにIPアドレスを割り当てることもできた。  設定内容は次の通り。   /etc/sysconfig/network-scripts/ifcfg-eth0    DEVICE=eth0    BOOTPROTO=dhcp    HWADDR=xx:xx:xx:xx:xx:xx (MACアドレス)    ONBOOT=yes    TYPE=Ethernet    DHCP_HOSTNAME="host"   /etc/sysconfig/network    NETWORKING=yes    HOSTNAME=host.domain  クライアントパソコンの/etc/hostsから自ホスト名記述(127.0.0.1 host.domain host)を削除したら、   $ ping hostname  が通らない。  DHCPクライアントソフトはインストールされているが、デーモンで動いてはいない。   $ rpm -qa | grep -e dhcp -e pump     dhcpcd-1.3.22pl4-0vl2     pump-0.8.24-0vl2   $ ps ax | grep -e dhcp -e pump | grep -v grep    (dhcpcd,dumpは動いていない) 以上

  • ホスト名でpingが通らない

    お世話になります。 Windows上にVMware Playerをインストールしています。 VMware PlayerにCentOSやUbuntuなどの環境をインストールしました。 hostsにホスト名(IPアドレス ホスト名)を記述しました。 それでコマンドプロンプト上からhostsに記述したホスト名でpingが通るかを確認したところ、pingが通るホスト名と通らないホスト名があります。 ※hostsには複数のホスト名を記述しています。 hostsを変更後、下記のコマンドを実行して試してみましたが結果は変わりませんでした。 ipconfig /flushdns [結果] Windows IP 構成 DNS リゾルバー キャッシュは正常にフラッシュされました。 ping ホスト名 ping 要求ではホスト ホスト名 が見つかりませんでした。ホスト名を確認してもう一度 実行してください。 nslookup ホスト名 サーバー: xxxxx.aaa.bb.cc Address: 999.999.999.999 *** xxxxx.aaa.bb.cc が ホスト名 を見つけられません: Non-existent domain hostsのプロパティを開いて「セキュリティ」を確認しました。 「グループ名またはユーザー名」は下記の通りです。 SYSTEM Administrators Users WindowsのOSは「Windows7」です。 すみませんがアドバイスいただけませんでしょうか。 宜しくお願いします。

  • 機器ごとにホストネームを設定する意味

    お世話になります。 最近になってサーバ系の仕事を始めた者です。 表題の件について、よろしければ教えてください。 構築作業や検証作業を頼まれて設定する度に疑問に思うのですが、 Linux(私の職場ではRHEL)では「/etc/sysconfig/network」でホスト名を設定しますよね。 さらに、その上に乗るPostfixやApacheなどのソフトウェアでもホスト名をFQDNで指定する項目があります。 私の理解では、こういったホスト名はクライアント(通信相手)側で解決できるhostsファイルなりDNSサーバといった手段を持っていれば、わざわざ自身でホスト名を設定する必要は無いと思うのですが、違うのでしょうか。そうであればどういった時に利用するものなんですか? 見当違いな質問でしたら、すみません。 有識者の方、教えてください。

  • ttsshで「ホスト名が無効です」と出て接続できません。

    WindowsXP機とFedoraCore6サーバをHubで繋いで家庭内LANにし、 ttrpm23 に、ttrpm2315j、ttssh154、と ttssh15412j を上書きし、 ttsshを使用しています。 Windows機からttsshでサーバに入るとき、IPアドレスを使うと問題なく入れ、データ授受ができます。 しかし、サーバのホスト名を指定すると「ホスト名が無効です」と出て接続できません。(SSH接続、ポート番号22、プレーンテキスト、公開鍵設定なし)。 Windows機のhostsファイル(C:\WINDOWS\i386\hosts)もサーバ側のhosts fileにもホスト名とIPアドレスの対応をキチンと書いてあります。 何故、ホスト名を使うと繋がらないのでしょうか? 単純な見落としがあると思うのですが、いくら考え直しても原因を発見することができません。 何かアドバイスを頂ければ有難いです。