IT Linux

【EVE-NG】CentOSでインターフェースが1つしかアップしない場合の解決方法

投稿日:

EVE-NGでCentOSを構築していた際に、インターフェースを2つ設定したのですが、
片方をアップさせると片方がダウンし、
どちらか1つのインターフェースしかアップしない、という謎の事象に見舞われました。
切り分けてみると意外と簡単に解決することができましたので、
私が忘れないうちに備忘録も兼ねてその解決方法をご紹介します。

事象

事象はGUIでみるとわかりやすいので以下のようになっています。
ens3とens4とある2つのインターフェースのうち、
どちらか片方しかアップさせることしかできないのです。
アップしていない方をアップさせると、
アップしていた方がダウンになるという事象です。

なぜインターフェースが2つ必要か

ちなみにですが、なぜインターフェースが2つ必要かというと
管理用と通信用でインターフェースを分けて使用したいからです。
1つのインターフェースでもいいのですが、
パケットキャプチャをした際に通信が混ざって、
確認や切り分けなどが面倒になったりしますので分けています。

解決方法

EVE-NG公式からダウンロードできるCentOSのイメージを読み込ませると、
デフォルトでGUIモードが有効となっていますので、GUIで最低限の操作を行っていました。

CLIでインターフェースのリンクアップを試みます。

[root@localhost ~]# ifup ens3
Could not load file '/etc/sysconfig/network-scripts/ifcfg-ens3'
Error: unknown connection '/etc/sysconfig/network-scripts/ifcfg-ens3'.

お、ファイルがないってエラーが出ていますね。
ファイルがないならファイルを作成してみましょう。

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens3

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens3
DEVICE=ens3
BOOTPROT=none
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=10.0.0.2
USERCTL=no

軽く設定内容について触れていきます。

DEVICE
インターフェース(NIC)の名称を設定します。
『ifconfig』やGUIの画面上でも確認できますので、同じ名称を記載します。
同じ名称でないとエラーが発生します。

BOOTPROT
IPアドレスを固定で設定したい場合は『none』、
DHCPで設定したい場合は『dhcp』と設定します。

ONBOOT
起動時自動的に接続するかどうかの設定です。
基本そのようにしたいと思いますので『yes』と設定します。

NETMASK
サブネットマスクを設定します。
DHCPで設定をする場合は不要です。

IPADDR
IPアドレスを設定します。
DHCPで設定をする場合は不要です。

USERCTL
root権限でないユーザでも操作可能かどうかを設定します。
『yes』はroot権限ユーザでない一般ユーザでも操作することが可能となりますが、
今回は検証環境で、基本的にroot権限ユーザで操作を行うので『no』としています。

その他にも細かい設定はありますが、
基本的にこれらの設定だけで問題ないかと思います。

設定が完了しましたので、インターフェースをアップさせます。

[root@localhost ~]# ifup ens3
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10)
[root@localhost ~]# ifconfig ens3
ens3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.0.0.2  netmask 255.255.255.0  broadcast 10.0.0.255
        inet6 fe80::250:ff:fe00:200  prefixlen 64  scopeid 0x20<link>
        ether 00:50:00:00:02:00  txqueuelen 1000  (Ethernet)
        RX packets 809  bytes 215432 (210.3 KiB)
        RX errors 0  dropped 12  overruns 0  frame 0
        TX packets 54  bytes 7109 (6.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[root@localhost ~]# ping 10.0.0.1
PING 10.0.0.1 (10.0.0.1) 56(84) bytes of data.
64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=2.37 ms
64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=0.915 ms

インターフェースをアップさせることができました。
ステータス確認と疎通確認をして、共に問題ないことを確認できました。

今回の原因としては設定ファイルがインターフェース名と異なる、
『ifcfg-Profile_1』というファイル名で作成されていたことのようです。

[root@localhost ~]# ls /etc/sysconfig/network-scripts/
ifcfg-ens3 ifcfg-Profile_1

同様にens4用の『ifcfg-ens4』設定ファイルも作成して、
双方のインターフェースをアップさせることができました。

まとめ

事象
2つのインターフェースのうち、
どちらか片方しかアップさせることしかできない
アップしていない方をアップさせると、アップしていた方がダウンになる

原因
設定ファイル名が『ifcfg-Profile_1』というファイル名で作成されていた

解決策
『ifcfg-ens3』のようにインターフェース(NIC)と同じ名称の設定ファイルを作成する

同じ事象に遭遇したら上記の方法を試してみてください。

-IT, Linux

Copyright© NWWブログ , 2021 All Rights Reserved Powered by STINGER.