

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 ec2-net-utils for AL2 設定您的網路介面
<a name="ec2-net-utils"></a>

Amazon Linux 2 AMIs 可能包含由 安裝的其他指令碼 AWS，稱為 ec2-net-utils。這些指令碼會選擇性自動化您網路介面的組態。這些指令碼僅適用於 AL2。

**注意**  
對於 Amazon Linux 2023，`amazon-ec2-net-utils`套件會在 `/run/systemd/network`目錄中產生介面特定的組態。如需詳細資訊，請參閱 * Amazon Linux 2023 使用者指南*中的[聯網服務](https://docs.aws.amazon.com/linux/al2023/ug/networking-service.html)。

如果尚未安裝套件，請使用下列命令在 AL2 上安裝套件，或者如果已安裝套件且有其他更新可用，請使用它進行更新：

```
$ yum install ec2-net-utils
```

下列元件屬於 ec2-net-utils：

udev 規則 (`/etc/udev/rules.d`)  
當網路介面連接、分離或重新連接到執行中的執行個體時識別它們，確保 hotplug 指令碼執行 (`53-ec2-network-interfaces.rules`)。將 MAC 地址映射到裝置名稱 (`75-persistent-net-generator.rules`，這會產生 `70-persistent-net.rules`)。

hotplug 指令碼  
產生適合搭配 DHCP 使用的介面組態檔 (`/etc/sysconfig/network-scripts/ifcfg-eth`*N*)。也產生路由組態檔案 (`/etc/sysconfig/network-scripts/route-eth`*N*)。

DHCP 指令碼  
每當網路介面收到新的 DHCP 租賃，此指令碼就會查詢彈性 IP 地址的執行個體中繼資料。它會為每一個彈性 IP 地址在路由政策資料庫中新增規則，以確保該地址使用正確的網路介面外送流量。它還會將每個私有 IP 地址新增至網路介面做為輔助地址。

**ec2ifup** eth*N* (`/usr/sbin/`)  
擴充標準 **ifup** 的功能。在此指令碼重新撰寫組態檔 `ifcfg-eth`*N* 和 `route-eth`*N* 之後，它會執行 **ifup**。

**ec2ifdown** eth*N* (`/usr/sbin/`)  
擴充標準 **ifdown** 的功能。在此指令碼從路由政策資料庫中移除網路介面的所有規則後，它會執行 **ifdown**。

**ec2ifscan** (`/usr/sbin/`)  
檢查是否有尚未設定的網路介面並加以設定。  
ec2-net-utils 初始版本不提供此指令碼。

使用下列命令列出 ec2-net-utils 產生的所有組態檔：

```
$ ls -l /etc/sysconfig/network-scripts/*-eth?
```

若要停用自動化，您可將 `EC2SYNC=no` 新增至對應的 `ifcfg-eth`*N* 檔案。例如，使用以下命令停用 eth1 執行個體的自動化：

```
$ sed -i -e 's/^EC2SYNC=yes/EC2SYNC=no/' /etc/sysconfig/network-scripts/ifcfg-eth1
```

若要完全停用自動化，您可使用以下命令移除套件：

```
$ yum remove ec2-net-utils
```