(CLIから)複数のIPアドレスを1つのインターフェイスに割り当てるにはどうすればよいですか?


43

私のサーバー上で私は1つのNICに、しかし非推奨使用せずに複数のIPアドレスを割り当てるifconfigか、時代遅れの「エイリアス」の表記を(のようeth0:0に)/etc/network/interfacesであるため、IPエイリアシングあなたが読むことができる(www.kernel.org上)

IPエイリアスは、インターフェイスごとに複数のIPアドレス/マスクを管理する時代遅れの方法です


ifconfigは非推奨ですか?知りませんでした。
マヘシュ14年

@Maheshええ、ifconfigはSysV時代のアーティファクトです。「iproute2」は、より新しいツールです。ifconfigはさまざまなディストリビューションでしばらく使用されますが、そうではありません。「非推奨」とは、「使用する新しいものを探す」ことを示すために使用された口語です。
デビッドベッツ

回答:


48
  1. 現時点で追加のIPアドレスが必要な場合は、マシンの任意のインターフェースに追加できます。

     sudo ip address add <ip-address>/<netmask> dev <interface>
    

    例えば

     sudo ip address add 172.16.100.17/24 dev eth0
    

    172.16.100.17設定されたアドレスのリストに24ビットネットマスクを使用して追加しますeth0

    結果を確認するには

    ip address show eth0
    

    このアドレスをもう一度削除できます

    sudo ip address del 172.16.100.17/24 dev eth0
    

    もちろん、これらの変更はマシンを再起動すると失われます。

  2. 追加のアドレスを永続的にするに/etc/network/interfacesは、フォームのスタンザをいくつでも追加してファイルを編集できます

    iface eth0 static
        address 172.16.100.17/24
    

    そのように見えるように

    iface eth0 inet dhcp
    
    iface eth0 inet static
        address 172.16.100.17/24
    
    iface eth0 inet static
        address 172.16.24.11/24
    

    dhcpプライマリアドレスを保持することもできます。

    再起動せずにこれらの設定を有効にするには、次のifdown/ifupように使用します

    sudo ifdown eth0 && sudo ifup eth0
    

    最初のコマンドは接続を切断するため、サーバーにリモート接続する場合は、これら2つのコマンドを1行に配置することが不可欠です。このようにして、sshセッションが存続します。


ソフトウェアマネージャーからインストールすることで、VPNアドレスを複数のIPアドレスにすることができます。
マイケル14年

IPを追加または削除した後、Ubuntu 16.04.3 LTSで再起動は必要ありません
ダニエルF

1
新しいUbuntuバージョンではifdownが非推奨のようです。
-Sajuuk

20

新しいツールキットを使用すると、古いものと同じくらい簡単に新しいIPアドレスを追加できます。

ip addr add 192.168.1.1/24 dev eth0

ip addr showもう一度調べると、インターフェイスに割り当てられた2番目のIPアドレスが表示されます。

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether xx:xx:xx:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.100/24 brd 192.168.0.255 scope global eth0
    inet 192.168.1.1/24 scope global eth0
    inet6 fe80::223:54ff:fe45:f307/64 scope link
       valid_lft forever preferred_lft forever

そのIPアドレスを削除するには:

ip addr del 192.168.1.1/24 dev eth0

iproute2スイート:

iproute2スイートは、netlinkプロトコルを介したカーネルとユーザー空間間のプロセス間通信のための通信スイートです。標準のネットワークツール全体を置き換える必要があります。置き換えられるものは次のとおりです。

  • ifconfig-> ip addrおよびip link
  • route -> ip route
  • arp -> ip neigh
  • iptunnel -> ip tunnel
  • ipmaddr -> ip maddr
  • netstat -> ss

一致するコマンドを提供するためのThx。
Guntbert 14年

thx @chaos、システムのインターフェイスの数よりも多くのIPを使用できますか?
ラザロ14年

@jazzzはい、上のインターフェイスの出力でわかるように、2つのIPアドレスが割り当てられています(192.168.0.100と192.168.1.1)。必要に応じて別のものを追加できます。
カオス14年

@chaosが、私はあなたが私の質問を参照してくださいすることができ,,例えば、私は、私は彼らからグループを形成することができ,,マルチキャスト用のグループを作成したい、それらを使用することができますどのようにaskubuntu.com/questions/547105/...
ラザロ

1
@chaosあなたのサーバー構成に期待する「永続性」が欠けているので、私はあなたの優れた答えの代わりに私自身の答えを受け入れます。
ガントベルト

0

1つの方法は次のとおりです。

sudo ip addr add 192.168.0.2/24 dev eth1
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.