본문

Tech
Linuxネットワーク管理に必要な 使用法11種類

작성일 2018.11.09

Linux_ifconfig.webp

歴史は繰り返されるという話。インターネットの初期の開発者は、サーバーのネットワークを直接構成してモニタリングしながらサービスを作りました。そして、分野がますます細分化するにつれて、サーバーのネットワーク構成は専門エンジニアの領域に発展してきました。しかし、クラウドはシステムエンジニアリングの専門分野を取り入れながら、開発者に基本的で論理的な部分のシステムエンジニアリングの役割を求めています。そしてDevOpsはシステムエンジニアと開発者の両方に基本的なシステム知識を求めています。そのため、開発者がサービスをモニタリングするために必要なネットワークコマンドであるifconfigについて学びたいと思います。

ifconfigは「interface configuration」の略で、Linuxのネットワーク管理のためのインタフェース設定ユーティリティです。Linuxのコマンドラインインターフェイスの中で、ifconfigはtopで最もよく使われています。

ifconfig コマンドは、現在のネットワーク構成情報を表示し、ネットワークインターフェイスにIPアドレス、ネットマスクまたはbroadcastアドレスを設定し、ネットワーク インターフェイスのエイリアスを作成し、ハードウェア アドレスを設定し、ネットワーク インターフェイスを有効または無効にするなど、さまざまな所で使用されます。

1. ネットワークインターフェイスの設定を確認する

引数を持たないifconfigコマンドは、アクティブなインターフェースの詳細を表示します。ただし、ifconfigだけでは無効なネットワークインタフェースを見ることはできません。

Linux_ifconfig_1.webp

  • [enp0s3] : ネットワークインターフェース
  • [flags] : ネットワークカードのステータス表示
  • [mtu] : ネットワークインターフェイスの最大転送単位(Maximum Transfer Unit)
  • [inet] : ネットワークインターフェイスに割り当てられたIPアドレス
  • [netmask] : ネットワークインターフェイスに割り当てられたネットマスクアドレス
  • [broadcast] : ネットワークインターフェイスに割り当てられたブロードキャストアドレス
  • [inet6] : ネットワークインターフェイスに割り当てられたIPv6アドレス
  • [prefixlen] : IPアドレスでサブネットマスクとして使用するビット数
  • [scopeid] : IPv6の速度。 ループバック / リンクローカル / サイトローカル / COMPATv4 / グローバル
  • [ether] : ネットワークインタフェースのハードウェアアドレス
  • [RX packets] : 受信したパケット情報
  • [TX packets] : 送信パケット情報
  • [collision] : 競合したパケット数
  • [Interrupt] : ネットワークインタフェースが使用する割り込み番号

2. すべてのネットワークインターフェイス設定を確認してください。<ifconfig – a>

-aオプションが入ると、無効なネットワークインタフェースを表示できます。無効なネットワークカードがない場合は、-aオプションがある場合とない場合が同じように見えます。以下の lo は、ループバック インターフェイスで内部通信用のネットワーク インターフェイスを無効にした状態です。

Linux_ifconfig_2.webp

3. そのインターフェイス情報のみを表示<ifconfig [interface]>

インターフェイスが多すぎる場合は、必要なインターフェイスだけを見ることも可能です。

Linux_ifconfig_3.webp

4. そのインターフェイスを無効にする <ifconfig [interface] down>

インターフェイスにdownオプションを使用すると、ネットワークインターフェイスカードが有効になります。Ifconfig enp0s3で確認すると、Flagsが異なることがわかります。

flags=4098 <BROADCAST,MULTICAST>

Linux_ifconfig_4.webp

5. そのインターフェイスを有効にする<UP、BROADCAST、RUNNING、MULTICAST>

インターフェイスにアップオプションを使用すると、ネットワークインターフェイスカードが有効になります。ifconfig [interface]で確認すると、flagsが異なることを確認できます。

flags=4163 <BROADCAST,MULTICAST>

Linux_ifconfig_5.webp

6. そのインターフェイスで IP を変更する <ifconfig [interface] [IP]>

ネットワークインターフェースでアイピー設定を変更する方法は、インターフェース情報とip情報を入力することで可能です。

Linux_ifconfig_6.webp

7. そのインターフェイスでネットマスクを変更する <ifconfig [interface] netmask [IP]>

ネットワークインターフェースにネットマスク設定を変更する方法は、インターフェース情報とネットマスクオプションとマスク情報を入力することで可能です。

Linux_ifconfig_7.webp

8. そのインターフェイスにブロードキャストアドレスを変更する <ifconfig [interface] broadcast [IP]>

ネットワークインターフェースにブロードキャスト設定を変更する方法は、インターフェース情報、ブロードキャストオプション、およびマスク情報を入力することで可能です。

Linux_ifconfig_8.webp

9. そのインターフェイスのIP /ネットマスク/ブロードキャストアドレスを一度に変更する<ifconfig [interface] [ip] netmask [ip] broadcast [IP]>

インターフェイスに関する情報を一度に変更するのが楽な場合があります。その場合は、一度にオプションをすべて入れてください。

Linux_ifconfig_9.webp

10. そのインターフェイスにMacアドレスを割り当てる<ifconfig [interface] hw ether [mac address]>

ネットワークインターフェイスにMacアドレス設定を変更する方法は、インターフェイス情報とhw ether、そして変更するMacアドレス情報を入力することで可能です。

Linux_ifconfig_10.webp

11. インターフェイスにエイリアスを追加して仮想インターフェイスを作成する <ifconfig [interface]:0 [ip]>

エイリアスを使用して、ネットワークインターフェイスに複数のIPを設定できます。コマンドを実行した後にifconfigで確認すると、新しいネットワークインターフェイスが追加されたことを確認できます。

Linux_ifconfig_11.webp

まとめ

ネットワークインターフェイスの管理とモニタリングのためのコマンドラインベースのツールはたくさんありますが、ifconfigが最も基本的なものです。開発者であっても最近システムエンジニアが自社にない場合が多いため、サービスのネットワーク入出力量を確認する必要がある場合や、ネットワーク構成を変更する必要がある場合には、直接簡単な命令を利用できる必要があります。そして、ネットワークに対するモニタリングの必要性が高まるにつれて、Cacti、Zabbix、Muninなどのモニタリングツールを導入することをお勧めします。

WhaTap Monitoringを体験してみましょう。
難しかったモニタリングと分析が容易に実現できます。