Linuxのipコマンドは、ネットワークを精密に制御したい人にとって必須のツールです。このツールを使えば、IPアドレスの確認、ネットワークインターフェースの追加・削除、接続状況の監視、そして設定の簡単な調整が可能です。ipコマンドはifconfigに代わる、より新しく信頼性の高いコマンドとして、パソコンとサーバーの両方でネットワーク管理の柔軟性を高めています。このコマンドの使い方を習得すれば、Linuxでプロフェッショナルなネットワーク運用への扉が開かれます。
Linuxのipコマンドって何に使うんだろうと疑問に思ったことはありませんか?もしかしたら、Linuxターミナルを使い始めたばかり、あるいはネットワーク管理を始めたばかりかもしれません。ipコマンドの基本的な使い方をいくつか例を挙げて説明しましょう。
ipコマンドは、ネットワークデバイス、インターフェース、トンネル、ルーティングを管理するためのコマンドラインツールです。ipコマンドを使用すると、ネットワーク要素を表示および制御でき、少なくとも使用しているデバイスからの認識方法を変更することができます。
これらの例に従ってipコマンドを使用して行った変更は、いずれも永続的なものではないことに注意してください。これは、誤ってデバイスがネットワークから切断された場合でも、再起動するだけで修復できるため便利です。ただし、永続的な変更を試みる場合は、追加のコマンドが必要になるという欠点があります。
1. ネットワークインターフェースのプレビュー
ip コマンドの一般的な用途は、Linux システムに接続されているネットワークデバイスを確認することです。この情報を使用して、ネットワークに接続したり、ネットワークに変更を加えたりすることができます。詳しくは後ほど説明します。
たとえば、ip link show コマンドを入力すると、すべてのネットワーク インターフェイスと、それらに関するその他の役立つ情報が表示されます。
スクリーンショットでは、3つのネットワークインターフェースがあることがわかります。最初の「lo」は内部バウンスデバイスで、ネットワークインターフェースです。 "バーチャル" これはLinux内部のプロセスでのみ使用されます。1番目のwloXNUMXは、ノートパソコンに内蔵されている無線ネットワークカードの名前です。XNUMX番目は、USB-Cポート経由でノートパソコンに接続されているイーサネットインターフェースです。
2. ネットワークインターフェースの無効化と有効化
ネットワークインターフェースを特定し、それを無効にしたいとします。何らかの理由で、そのインターフェースを経由してデータを一切通過させたくない場合は、ipコマンドを使って無効化し、Linuxがそのインターフェースを二度と使用しないようにすることができます。
これを行うには、「link set」コマンドを使用し、デバイスの電源をオフにするipコマンドを指定します。この例では、ipコマンドを使用してwlo1ワイヤレスネットワークインターフェースを無効にしています。インターフェース名は同じ場合も異なる場合もありますので、コマンドを使用する前に正しい名前を選択してください。
sudo ip link set wlo1 ダウン
今後は wlo1 インターフェイスは使用できなくなり、show ip link コマンドを再度使用すると、そのステータスは「無効」になります。
気が変わって、またwlo1を使いたくなったとしましょう。簡単です。
IPリンクセットアップ WLO1
以前と同様に、何かが起こったという確認メッセージは表示されず、 wlo1 を再起動する可能性があります。
3. ローカルIPアドレスを表示する
ローカルネットワークのIPアドレスを確認したい場合、ipコマンドは最も簡単な方法の一つです。これは、ネットワークに接続されているデバイスの識別、セルフホストサーバーへのアクセスなど、様々な場面で役立ちます。
パソコンに「ip address」「ip addr」、または単に「ip a」と入力すると、ネットワークデバイスごとに分類されたすべてのデバイスのIPアドレスが表示されます。おそらく、エコーループに関連付けられていないアドレスのみを確認したいはずです。これらのアドレスは、CIDRクラスを示す「/24」などの記号で表示されることに注意してください。
私のように複数の物理ネットワークインターフェースがある場合、複数のローカルIPアドレスが存在することになります。別のデバイスから自分のデバイスに接続する際、正しいIPアドレスを指定することで、使用する接続方法(またはネットワークインターフェース)を選択できます。
IPV4のみ
IPアドレスコマンドのみでも、IPV4アドレスとIPV6アドレスを含む多くの情報が表示されます。IPV4アドレスのみを知りたい場合は、-4フラグを使用してIPV4アドレスのみをフィルタリングできます。
ip-4a
ご覧のとおり、出力で IP アドレスを見つけるのがはるかに簡単になります。
IPV6のみ
同様に、IP アドレスの IPV6 バージョンのみに関心がある場合は、-6 フラグを使用できます。
ip-6a
4. ローカルIPアドレスを追加する
他のデバイスとの競合を解決したり、特定のアドレスを検索するプログラムがデバイスにアクセスしやすくしたりするために、ネットワークインターフェースにIPアドレスを作成しなければならない場合があります。これはipコマンドを使って行うことができます。
私の場合、Ethernetアドレスを192.168.1.130に割り当てたいと考えています。もちろん、まずローカルネットワーク上の他のデバイスがこのアドレスを使用していないことを確認しました。IPアドレスの競合を避けたいからです。その後、次のコマンドで新しいアドレスを割り当てます。
sudo ip addr add 192.168.1.130/24 dev enx00e04c68143d
ここで、IP リンク ビューを使用して Ethernet デバイスの統計を確認すると、2 つの異なるアドレスがあることがわかります。
5. IPアドレスを削除する
新しいIPアドレスを追加した後、古いIPアドレスを削除したいとします。もちろん、まずローカルネットワーク上のデバイスが重要な通信にこのアドレスを使用しておらず、代わりに新しい優先IPアドレスを使用していることを確認する必要があります。その後、次のコマンドを実行します。
sudo ip addr del 192.168.1.129/24 dev enx00e04c68143d
今後、私のデバイスはアドレス 192.168.1.129 経由ではアクセスできなくなります。
6. 近くのデバイスを表示および制御する
ローカルネットワーク上の他のどのデバイスが到達可能か知りたいとします。ipコマンドを使用すると、「ネイバー」と呼ばれる、ネットワーク上に表示されるアクティブなローカルデバイスを検索できます。これは、接続に関する問題のトラブルシューティングに役立ちます。
例えば、現在、私のネットワークにはRaspberry Piと他の有線デバイスがいくつか接続されています。ip neighbor、ip neigh、または単にip nというコマンドを実行すると、それらのアドレスが一覧表示されます。
各エントリのMACアドレスが表示されるため、各デバイスを識別するのに役立ちます。各デバイスエントリの最後には、「到達可能」「レガシー」「遅延」など、現在のステータスの説明も表示されます。これにより、接続しようとしているデバイスに問題がある場合、その特定に役立ちます。
ip コマンドを使えば、ネイバーテーブルを手動で編集することもできます。例えば、192.168.1.121 にある Raspberry Pi の MAC アドレスが何らかの理由で変更され、接続の問題を回避するためにネイバーリストをすぐに更新したいとします。新しい MAC アドレス 3d:2f:a2:a7:a0:74 を取得したら、エントリを次のように変更します。
sudo ip n 変更 192.168.1.121 lladdr 3d:2f:a2:a7:a0:74 dev wlo1
いくつか明確にしておくと、「n change」コマンドの後に、変更するデバイスの IP アドレスを指定し、「lladdr 3d:2f:a2:a7:a0:74」コマンドで新しい MAC アドレスを指定し、「dev wlo1」コマンドで更新を適用するために使用しているネットワーク インターフェイスを示します。
私の例に従う場合、IPアドレス、MACアドレス、インターフェースを状況に応じて適切な名前に置き換える必要があります。ipコマンドを使用して隣接デバイスを追加または削除することもできますが、この記事では詳しく説明しません。
7. ネットワークパスを確認する
ipコマンドの「route」オブジェクトを使用すると、デバイスのインターネットトラフィックをローカルネットワーク上でどのようにルーティングするかを確認できます。これは、接続に関する問題のトラブルシューティングに役立ちます。以下のコマンドを実行するだけです。
IPルート
あるいは単純に:
192.168.1.1つの固有のパスが表示されています。ルーターのアドレスである192.168.1.0へのデフォルトパスと、ローカルネットワークに接続されている他のデバイスの範囲を定義する24/01へのパスです。これらのデバイスには、無線インターフェース「wl00」または有線インターフェース「enx04e68143cXNUMXd」を介してアクセスできます。各パスには、パスの優先度を示す「メトリック」も設定されています。メトリックが低いほど、優先度が高くなります。
ipコマンドには、ルートの追加と削除、トンネルの管理など、他にも多くの機能があります。これらの例は、Linuxネットワークの世界におけるシンプルで簡単な手順を示しています。その後、ncコマンドの実用的な例を確認したり、Ubuntuで静的IPアドレスを設定する方法を学んだりすることをお勧めします。
LinuxのIPコマンドをマスターすれば、接続の詳細の把握からインターフェースの設定、アドレスの管理まで、ネットワーク設定を完全に制御できるようになります。このツールを活用することで、システム管理の時間を大幅に節約し、効率を向上させることができます。Linuxスキルの向上を目指すなら、IPコマンドはネットワークを効果的に理解し管理するための最初の鍵となります。