![]() ifconfig 〜(IP)ネットワーク環境の確認/設定を行う 加地眞也 2001/9/29 |
| 目的と用途 |
ifconfigコマンドは、おもにUNIX系OSやLinuxで使用されるネットワーク環境の状態確認/設定のためのコマンドだ。ホストに設置されたNIC(ネットワーク・インターフェイス)に対し、IPアドレスやサブネットマスク、ブロードキャストアドレス、そのほかの基本的な設定を行うとともに、現在の設定の確認もできる。
IP(IPv4)のための機能が中心だが、IPXやIPv6のための設定機能もある(OSバージョンやドライバに依存する)。
| 書式 |
●Linuxの場合
ifconfig[ -a] インターフェイス名[[アドレスファミリ名] アドレス][ add IPv6アドレス[ /プレフィックスサイズ]][ del IPv6アドレス[ /プレフィックスサイズ]][ [-]broadcast[ ブロードキャストアドレス]][ [-]pointopoint[ 相手先アドレス]][ netmask ネットマスクアドレス][ dstaddr 相手先アドレス][ tunnel 相手先アドレス][ hw クラス アドレス][ metric メトリック値][ mtu MTU値][ [-]trailers][ [-]arp][ [-]allmulti][ multicast][ [-]promisc][ mem_start アドレス][ io_addr アドレス][ irq 割り込み番号][ media タイプ][ txqueuelen サイズ][ up|down]
|
オプションなし
|
起動しているインターフェイスごとのネットワーク設定を表示する |
|
-a
|
存在するインターフェイスごとのネットワーク設定を表示する |
|
アドレス
|
インターフェイスに特定のアドレス(通常はIPアドレス)を設定する。アドレスファミリ名は以下のようなプロトコル種別を指定する。デフォルトは「inet」 inet:IPv4 inet6:IPv6 ipx:Novell IPX ddp:AppleTalk など |
|
add
|
指定したIPv6アドレスをインターフェイスへ追加する |
|
del
|
指定したIPv6アドレスをインターフェイスから削除する |
|
broadcast
|
指定したIPアドレスをブロードキャストアドレスとして設定する。アドレスを省略した場合、ブロードキャストの利用のみを指定したことになる。先頭に「-(ハイフン)」を付けると無効の意味になる |
|
pointopoint
|
指定したIPアドレスとの間のみで通信を行う(ポイント間通信の設定)。PLIP(Parallel Line Interface Protocol)などで使用する。先頭に「-(ハイフン)」を付けると無効の意味になる |
|
netmask
|
このインターフェイスが使用するサプネットマスクを設定する |
|
dstaddr
|
指定したIPアドレスとの間のみで通信を行うことを設定するが、pointopointで行うように現在では置き換えられている |
|
tunnel
|
IPv6 over IPv4トンネルのための相手先アドレスを指定する |
|
hw
|
インターフェイスのハードウェアクラスとアドレスを指定する。ただしドライバがサポートしない場合もある |
|
metric
|
インターフェイスのメトリックを指定する |
|
mtu
|
インターフェイスのMTU(Maximum Transfer Unit:Ethernetフレームの最大転送サイズ)を指定する |
|
trailers
|
Ethernetフレームのチェックサムの評価を行う。先頭に「-(ハイフン)」を付けると無効の意味になる |
|
arp
|
ARPの利用を有効にする。先頭に「-(ハイフン)」を付けると無効の意味になる |
|
allmulti
|
すべてのマルチキャストパケットの受信を有効にする。先頭に「-(ハイフン)を付けると無効の意味になる |
|
multicast
|
マルチキャストの利用を有効にする |
|
promisc
|
自身向け以外のすべてのパケットの受信を有効にする。先頭に「-(ハイフン)」を付けると無効の意味になる |
|
mem_start
|
インターフェイスドライバの共有メモリ利用アドレスを指定する |
|
io_addr
|
インターフェイスドライバのI/O開始アドレスを指定する |
|
irq
|
インターフェイスドライバの割り込み番号を指定する |
|
media
|
インターフェイスが使用するメディアの種類を指定する。「auto(自動認識)」「10baseT」「10base2」などが指定できる |
|
txqueuelen
|
パケットの送信キューのサイズを指定する |
|
up|down
|
インターフェイスの起動(up)/停止(down)を指示する |
| 使用方法 |
■ネットワーク環境を確認する
ifconfigの第一の目的は、現在のネットワークの設定状態を確認することだ。すべての設置済みのインターフェイスを確認するには「-a」オプションを用いる。
|
ここでは、3つのインターフェイスの結果が表示されている。「eth0」「eth1」「lo」がそれだ。eth0とloは正常に稼動し、eth1は起動されていない。それぞれは「インターフェイス名」と呼ばれ、設定時に指定するための名称である。対応するネットワーク・ドライバが正常にロードされていれば、OSが自動的に認識してくれる。ethの後に続く「0」「1」の番号は認識した順に割り振られる。またethはイーサネットの場合の例で、PPP接続などの場合は「ppp」となる。これらの先頭文字列も、OSや環境しだいでは別の名称に変更されている場合がある。
loは「ローカルループバック」と呼ばれる特別な仮想インターフェイスだ。ホスト自身を示しており、OSのプロトコルスタックが必ず提供することになっている。従って、まったくNICを設置していない場合でも、このloだけは存在する。そうした初期状態であっても、仮想的にネットワークのテストなどに使えるように用意されているのだ。また、対応するIPアドレスは必ず127.0.0.1が割り当てられる。当然、このIPアドレスを用いて外部と通信することはできない。
ではeth0を元に、実際の表示内容を見ていこう。なお、表示されない項目は設定自体がなされていないということを意味する。例えばIPアドレスが表示されていなければ、IPアドレスの設定が何らかの問題で失敗しているということになる。
(1) リンクメディアの種類
接続されているネットワークメディアの種類だ。ほとんどの場合、「Ethernet」と表示されるだろう。ほかに「Token Ring」などの種類もある。ローカルループバックでは、その旨の内容が表示される。
(2) MACアドレス
物理アドレスとも呼ばれる、NIC固有の番号だ。通常、NICに対して出荷時に設定がなされており、変更することはできない。
(3) IPアドレス
ホストのIPアドレス。後述する方法で静的に独自のIPアドレスが設定されているか、DHCP機能によって割り振られたIPアドレスが表示されているはずだ。
(4) ブロードキャストアドレス
ブロードキャストのためのアドレスだ。サブネットマスクとは別に、ブロードキャストアドレスを設定することもできる。
(5) サブネットマスク
ホストが使用するサブネットマスク。DHCP機能により、自動的に設定されている場合もある。
(6) インターフェイスの起動状態
インターフェイスは正しい設定とともに、起動状態でないと動作することはない。 「UP」は現在正常に稼働していることを示す。
(7) ブロードキャストの使用
ブロードキャストが利用できるときに表示される。ほとんどの場合は有効となっているはずだ。
(8) インターフェイス準備の状態
ニュアンスは似ているが、起動/停止とは異なる。「RUNNING」はドライバが正 常にロードされメモリへのリソース割り当てが行われている状態を示す。起動前であれば起動準備が整っていると捉えられる。
(9) マルチキャストの有効/無効
マルチキャストと呼ばれる一対多の通信モードが有効になっているかどうかを示す。
(10) MTU(Maximum Transfer Unit)サイズ
このインターフェイスでのMTUを示す。単位はバイト。
(11) メトリック
このインターフェイスにおけるメトリック値を示す。メトリックは、ルーティングするIPバケットのTTL(Time To Live)値を減算するためのホップ数を反映する基礎値だ。通常は1となる。
(12) インターフェイスの統計値
このブロックはインターフェイスにおける現在までの統計値を示す。「RX」は受信パケット、「TX」は送信パケットである。順に送受信パケット数、エラーパケット数、破棄パケット数、オーバーランパケット(処理が間に合わなかったパケット)数などを示す。また、「collisions」はイーサネットレベルでの衝突検知回数を、「txqueuelen」はパケットの送信キューのサイズを示している。
(13) インターフェイスが使用する割り込み番号
(14) インターフェイスドライバのI/O開始アドレス
■基本的なネットワーク設定方法
●使用例1:IPアドレスの設定
|
設定はインターフェイスごととなるので、インターフェイス名の指定が必須になる。インターフェイス名に続くオプションにより設定が行える。DHCP機能などを使用しない限り、静的なIPアドレスの設定は必須だ。引数として単に与えられた場合は、インターフェイスに設定するIPアドレスを意味する。また、最低限の設定としては、サブネットマスク、ブロードキャストアドレスの設定も必要だ。それぞれ、接続されるネットワークによって管理者により取り決められているはずなので、設定値には注意を払おう。設定値を間違えると、ネットワークへ接続できなかったり、無駄な通信によりネットワークに甚大な被害を与えることがある。
なお、「IPアドレス」「サブネットマスク」「ブロードキャストアドレス」はそれぞれ個別に設定することもできる。
●使用例2:インターフェイスの起動/停止
|
通常はIPアドレスを設定した時点で、インターフェイスは起動状態に移行する。ただし、インターフェイスを一時的に停止して作業を行いたい場合もあるだろう。その際には任意にインターフェイスの起動/停止も行える。
●使用例3:MTUを変更する
|
最近のブロードバンド環境では、MTUの変更を必要とする場合もある。MTUとは、イーサネットフレーム(パケット)のデータ部分の最大サイズのことだ。このデータ部分にはIPパケットを(必要であれば)分割格納するのだが、フレームを転送するホストやルータでMTU値が大きく異なっていると、サイズ合わせのためにIPパケットの分割と結合が多発し、著しく性能を低下させることもある。MTUには、最大1500までの数値を設定できる。
Linuxではデフォルトで1500バイトとなっており、問題にならないことも多いが、ISPやルータの販売メーカーから別途指示がある場合には、「mtu」オプションで変更してみてもよいだろう。
●使用例4:IPエイリアスの指定
|
物理的に1つのインターフェイスに、複数のIPアドレスを割り当てるのがIPエイリアスだ。この設定により、仮想的に複数のインターフェイス(IPアドレス)を利用可能になる。必要になることは少ないだろうが、例えばISP業者のように、1台のサーバマシン上で複数のWebサーバを起動して、それぞれ別のIPアドレスを割り当ててサービスを提供する場合などに利用される。
IPエイリアスのためのインターフェイス名は、メインとなるインターフェイス名の右辺に「:(コロン)」とエイリアス番号(通常は0から始まるそのインターフェイスにおけるエイリアスの連番)を指定する。「サブネットアドレス」「ブロードキャストアドレス」についても、通常通り設定できる。ただし、メインとなるインターフェイス自身に対して、事前にIPアドレスなどの設定が完了していなければならない。
|
|
| IPエイリアスを追加した例。「eth0:0」が追加されたエイリアスのエントリーだ |
メインとなるeth0以外に、エイリアスとして設定された仮想的なインターフェイスが「eth0:0」として追加されているのが分かるだろう。最新のカーネル(バイナリ配布)であればデフォルトで利用できるようだが、バージョンによっては「ip_alias.o」モジュールをあらかじめロードしておく必要がある。
■ネットワークが使えない! その時は
●インターフェイスは正常に動作しているか?
インターフェイスが正常に動作しているかどうかは、「ifconfig -a」などで、各インターフェイスの「UP」「RUNNING」が表示されているかどうかを確認しよう。前述のように、「RUNNING」はドライバ自体の動作を、「UP」は起動を意味している。「RUNNING」のみ表示されている場合には、「ifconfig
インターフェイス名 up」を実行してみよう。こういった障害が発生した場合には、
- 正しいドライバーがインストールされていない → 各ベンダに応じたドライバを手動で設定する
- 正しいIPアドレスなどが与えられていない → 手動で設定するか、ブート時の読み込みファイルとなる「/etc/sysconfig/network-scripts/ifcfg-eth<i>n</i>」ファイルをチェックする
- インターフェイスのハードウェア障害
などの原因が考えられる。
●統計値を確認してみる
「インターフェイスが動作しているのに外部と通信できない。どうもネットワークのレスポンスが悪かったりエラーが頻発しているようだ」という場合には、「ifconfig
-a」などで表示されるインターフェイスごとの統計値が参考になる。
まず、パケット数が0より増えているかどうか。ここが0であれば、元々ネットワークと通信できていないことになるので、ハードウェア障害なども疑った方がいい。また、エラーパケット数、破棄パケット数なども要注意だ。ここでいくつか報告されているようなら、通信品質が劣っていることになる。特にLAN環境であれば、ほぼ0程度で抑えられているはずだ。目立って値が大きい場合には、同じセグメント上のほかのホストではどうか、ルータなどで問題がないかどうか、ネットワーク占有率が高くないかどうかなど、ネットワーク全体での問題も調査してみよう。
●IPアドレスの間違いは馬鹿にできない
経験上、多くの「通信できない」といった問題では、IPアドレスやサブネットマスクの設定間違いといったケアレスミスが意外に多い。「間違いないはず」と思い込んでいる部分こそがもっとも危険なわけだ。
IPアドレスの重複/打ち間違いのほか、サブネットマスクの間違いは、自身の問題だけでなく、ほかのホストやネットワーク全体にも迷惑をかけることになる。逆に、ほかのホストでの設定ミスによって、そのホストに対して接続できないトラブルなども考えられる。
| 記事更新記事中、使用方法の(6)と(8)に正確でない表現があったため、修正して更新しました。2003/6/3 |
| 関連記事 | |
| ネットワークの設定は正しいか? 重要なのはIPアドレスとサブネットマスク |
|
| 関連ネットワーク・コマンド/ツール | |
| ipconfig 〜Windowsのネットワーク設定を確認する |
|
| ifconfig 〜(IP)ネットワーク環境の確認/設定 |
|
|
ネットワークトラブル解決法
|
|
ネットワークコマンド使い方
|
ネットワーク・コマンドでトラブル解決
トラブルシューティングに便利な各種コマンド/ツール事典。各ツールの活用法をまとめたTipsも順次アップデート!
- 第1回 つながらないネットワークの原因を特定する!
- 第2回 ネットワークトラブル、まずはホストの設定を見直そう!
- 第3回 ルーティングのトラブル、まずはその仕組みから理解!
- 第4回 イーサネットの通信は正しく行えているか?
- 第5回 TCP/UDPの接続ステータスを確認しよう!
- 第6回 DHCPの自動設定機能をうまく使いこなすコツは?
- 第7回 DNSの設定と動作は正しいか?
コマンドを使ってトラブルシューティング
社内のPCが突然、メールを受信できなくなり、Webも見られない環境になってしまった。そんなとき、どのように対処するべきか
- 第1回 LANから外に出られない!?
- 第2回 どうして課長だけプリントできない?
- 第3回 ネットワークに同じIPアドレスが2つある?
- 第4回 同じメールしか受信できない!?
- 第5回 ファイルがアップロードできない?
- 第6回 私だけネットワークにつながらない!?
- 第7回 特定のサイトにだけアクセスできない
- 第8回 無線LANでメールがたまに受信できない?
- 第9回 外部を勝手に攻撃しているのは誰?
- 第10回 夜になるとネットワークが遅くなる?
- 最終回 怪しいサイトに飛ばされるんだけど
ツールを使ってネットワーク管理
名前しか知らない後輩君がやってきた。彼によると、コマンドはすでに古くツールがクールだという。ならば教えてもらおうではないか
- 第1回 後輩のツール君曰く、コマンドはもう古い!?
- 第2回 勝手にネットにつないでるマシンを探せ!
- 第3回 私用メールする子にお仕置きを
- 第4回 OSやアプリケーションの箱がなくなっても大丈夫?
- 第5回 俺の「パスワード:*****」って何でしたっけ?
- 第6回 ユーザー名と同じ安易なパスワードを撲滅せよ!
- 第7回 いきなりナウでヤングなWebサイトを管理しろって……
- 第8回 「POPFile」でスパムと無駄な時間は除去じゃ!
- 第9回 それはスパムか否か、POPFileの振り分けを鍛える
- 第10回 情報漏洩防止のためにPC監視!?「WatchYourPC」
- 第11回 とにかく社内でWinnyの起動をやめさせたい
- 第12回 USBでコピーデータを家に持ち帰らせたくない
- 第13回 パスワード、記憶に頼っていて大丈夫?
- 第14回 サーバ異常をメールで知らせる統合監視ツール
- 第15回 メールサーバがいっぱいですよ、と警告されたら
- 第16回 出張中のメール送信にご用心!
- 第17回 安いホスティングに引っ越しって簡単にいうけど
- 第18回 WebサーバにFTPできないんですけど……
- 第19回 PC環境の移行。あなたならどうする?
- 第20回 サーバのリモートバックアップをさせたい
| 「Master of IP Network総合インデックス」 |
ホワイトペーパー(TechTargetジャパン)
- 知られざるLTEのネットワーク構成 (2010/1/13)
LTEのネットワーク構成やプロトコルスタックを詳解。それぞれどんな役割を果たしているかを解説します - iPhoneアプリ内課金導入でガッチリもうけるのだ (2009/12/18)
「iPhoneのアプリ内課金ってどーよ?」 そんな疑問に答えるべく、アプリ内課金のサポート業務を行っている企業を直撃 - インターネット世界の住所の書き方 (2009/12/8)
TCP/IPネットワークであて先を特定する識別子、IPアドレスの構造やサブネットマスクの役割などを説明します - iPhoneアプリに広告を挿入してガッチリもうけるのだ (2009/11/16)
iPhoneアプリに広告を挿入して1日に50万円ももうけている!と聞き、その仕組みを知りたくて、日米のアドネットワーク企業に聞いた
|
|
スキルアップ/キャリアアップ(JOB@IT)
スポンサーからのお知らせ
- - PR -
- - PR -
お勧め求人情報

**先週の人気講座ランキング**
〜CCNA編〜
| ◆ | 企業の仮想化に足りない“発想”とは? 仮想化運用管理のキモは意外なところに! New! |
| ◆ | 操作もマニュアルも分かりやすい! ユーザー視点で開発されたPC管理ツール New! |
| ◆ | 仮想化すればコストは削減できるか? 仮想化に必要な「3つの視点」を解説する |

| ◆ | セキュリティを知り尽くす上野氏が登壇! @ITメールソリューションLive! in Tokyo |
| ◆ | 運用管理の課題を“2つの観点”から分析 ユーザー満足度の高い「仮想環境」とは? |
| ◆ | 世界に通用するストレージの作り方とは? 製品に込めた思いを富士通の開発者に聞く |

| ◆ | OSSで手間も時間も、障害も減った―― 「マピオンの事例」オープンソース活用法 |
| ◆ | 「ノートPCの持ち出し禁止」で大丈夫? 情報漏えいを防ぐ管理手法とインフラは? |
| ◆ | 1日の処理を1秒に――MySQLの達人が語る 「コスト削減」できるチューニング |

| ◆ | ドキュメント作成を自動化して、SEの作業 効率を大幅アップ! Visio 2007の魅力 |
| ◆ | 急速に広がるHyper-Vでのサーバ仮想化 そのベストプラクティスをデルが解説 |
| ◆ | @IT主催セミナーで語られた、「担当者に 求められるセキュリティ対策」をレポート |

| ◆ | @IT「Windows 7」 特設サイトオープン! 最新情報・移行ノウハウを公開しています |







