web-dev-qa-db-ja.com

CentOS 7の起動時にDHCPを使用するようにネットワークインターフェイスを設定するにはどうすればよいですか?

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
Alaa Elrifaie

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)の構成では、IPADDRNETMASKGATEWAY、などのローカルプライベートネットワークの静的パラメーターを構成する必要があります。 (重要です!)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のみを使用できます。

1
Ivan Olshansky

すでに「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かを確認します。

1
bhupender singh