Eth0とeth1の2つのNICを備えたCentOS7マシンがあります。設定と設定を編集して、eth0を無効にしました(セットアップには必要ないため)。
ONBOOT="no"
そして、eth1(私のlanインターフェイス)を次のように構成した後でも、DHCPを要求しません。
DEVICE="eth1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="dhcp"
IPADDR="10.0.0.5" # This is the IP assigned to this machine on the private network.
NETMASK="255.255.0.0"
IPV6INIT="no"
MTU="1450"
これで、システムを再起動するたびに、コマンドdhclient eth1
を手動で使用してDHCPアドレスを取得する必要があります。これを解決するために他に何ができますか? BOOTPROTOの設定がカギだと思いました!
2番目のNIC用に2つの仮想インターフェイスを作成する必要があります。DHCP用にeth1
自体、プライベートネットワーク用にeth1:1
です。
eth1
(ファイル/etc/sysconfig/network-scripts/ifcfg-eth1
)の構成では、DEVICE="eth1"
、BOOTPROTO="dhcp"
、およびnoIPADDR
およびNETMASK
。
eth1:1
(ファイル/etc/sysconfig/network-scripts/ifcfg-eth1:1
)の構成では、IPADDR
、NETMASK
、GATEWAY
、などのローカルプライベートネットワークの静的パラメーターを構成する必要があります。 (重要です!)DEVICE="eth1:1"
およびBOOTPROTO="static"
。
その結果、構成ファイルは次のようになります。
/ etc/sysconfig/network-scripts/ifcfg-eth1:
DEVICE="eth1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="dhcp"
IPV6INIT="no"
MTU="1450"
/ etc/sysconfig/network-scripts/ifcfg-eth1:1:
DEVICE="eth1:1"
ONBOOT="yes"
NM_CONTROLLED="no"
BOOTPROTO="static"
IPADDR="10.0.0.5" # This is the IP assigned to this machine on the private network.
NETMASK="255.255.0.0"
IPV6INIT="no"
MTU="1450"
この場合、システムは正しいネットワーク構成で起動します。
追伸:プライベートネットワーク10.0.X.X
に直接アクセスする必要がなくなった場合は、最初の構成ファイル/etc/sysconfig/network-scripts/ifcfg-eth1
のみを使用できます。
すでに「BOOTPROTO=dhcp
"、IPADDR、NETMASK、およびGATEWAYをバイパスするため、これらを指定する必要はありません。dhcpの場合は、次のように使用します。
vi /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=dhcp
DEFROUTE=yes
NAME=eth1
UUID=ACCORDING_TO_YOURS
DEVICE=eth1
ONBOOT=yes
そして、ファイルを保存した後、クロスチェックするためにサービスを再起動するだけです。
# systemctl restart network
注:まず、ネットワークが静的かDHCPかを確認します。