CentOS7システムの再起動後のIPアドレスの問題

Zookeeperを構成しているときに、CentOS 7を再起動したところ、XShellを使用してシステム(ホスト:192.168.186.128)にリモート接続するとタイムアウトになりました。

私は長い間、オペレーティングシステムのさまざまなバグや事故に慣れており、コードを作成するときに、限られた時間内にすべてを解決できることを知っているためです。

次に、システムページに直接移動し、コマンドラインを開いて次のように入力しました ifconfig

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.186.130  netmask 255.255.255.0  broadcast 192.168.186.255
        inet6 fe80::20c:29ff:fe1a:6c13  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:1a:6c:13  txqueuelen 1000  (Ethernet)
        RX packets 636  bytes 48167 (47.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 237  bytes 26851 (26.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

以前のシステムスナップショットバックアップによると、以前の情報は次のように取得できます。

eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.186.128  netmask 255.255.255.0  broadcast 192.168.186.255
        inet6 fe80::20c:29ff:fed8:e9b9  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:d8:e9:b9  txqueuelen 1000  (Ethernet)
        RX packets 1370575  bytes 1933632481 (1.8 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 360561  bytes 85054851 (81.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 19044  bytes 38146469 (36.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 19044  bytes 38146469 (36.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ホストアドレスは、再起動後に192.168.186.128から192.168.186.130に変更されました、そして元がいることがわかる eno16777736 も変更します ens33

次に、コマンドを実行してネットワークを再起動しようとした service network restart か systemctl restart network、エラーが見つかりました。

Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details.

詳細なエラー情報を表示するには、コマンドcat /var/log/messages | grep network実行し てエラーを見つけます。

...
Sep 25 10:55:30 localhost network: [FAILED]
Sep 25 10:55:30 localhost NetworkManager[16202]: <info>  renaming /etc/sysconfig/network-scripts/ifcfg-eno16777736 -> /etc/sysconfig/network-scripts/ifcfg-ens33
Sep 25 10:55:30 localhost network: Bringing up interface ens33:  Error: no device found for connection 'eno16777736'.
...

エラーメッセージは、ネットワークカードeno16777736のロードに失敗したことです。

したがって、コマンドcd /etc/sysconfig/network-scripts/実行して 、ネットワーク構成が保存されているフォルダーに入ります。

ディレクトリ内のファイルを見ると、元のネットワークカードeno16777736に対応する構成ファイルifcfg-eno16777736のみが存在し、ネットワークカードens33に対応する構成ファイルは存在しないことがわかります。したがって、再起動後、システムは元のネットワークカードを削除し、新しいIPアドレスで新しいネットワークカードを有効にしたと推測されます。このための解決策は、ネットワークカード構成ファイルを置き換え、IPアドレスを古いIPアドレスに再構成して、ネットワークを再起動することです。

まず、コマンドcp ifcfg-eno16777736 ifcfg-ens33実行し てファイルをコピーします。

次に、コマンドを実行してファイルを編集します vim ifcfg-ens33。ネットワークカード名を元のeno16777736からens33に変更し、IPアドレスが元のアドレスであることを確認します。

IPADDR=192.168.186.128
NAME=ens33
DEVICE=ens33

同時に、コマンドを実行して、無効なネットワークカードの構成ファイルを削除します rm ifcfg-eno16777736

次に、コマンドを実行してネットワークを再起動し、 systemctl restart networkそれを実行 ifconfig して、IPアドレスが元のIPアドレスに正常に置き換えられたことを確認します。

[root@localhost network-scripts]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.186.128  netmask 255.255.255.0  broadcast 192.168.186.255
        inet6 fe80::20c:29ff:fe1a:6c13  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:1a:6c:13  txqueuelen 1000  (Ethernet)
        RX packets 777  bytes 57063 (55.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 280  bytes 31690 (30.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 4  bytes 352 (352.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 4  bytes 352 (352.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

再起動後にエラーが報告されないが、IPアドレスが変更されていない場合は、キャッシュの問題を防ぐためにもう一度再起動を実行します。

XShellを再利用してシステムに接続します。接続が最初にタイムアウトした場合は、接続をオフにして、キャッシュの問題を防ぐために再試行します。

最後に、システムを再起動して、IPアドレスとネットワークカードが正常で変更されていないことを確認します。XShellを使用して、CentOS7システムに正常にリモートアクセスできます。

詳細を知りたい場合は、WeChatパブリックアカウントをフォローしてください:Renda_Zhang

おすすめ

転載: blog.csdn.net/qq_40286307/article/details/108810395