

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

# IP 偵測器
<a name="ip-detector-component"></a>

IP 偵測器元件 (`aws.greengrass.clientdevices.IPDetector`) 會執行下列動作：
+ 監控 Greengrass 核心裝置的網路連線資訊。此資訊包括核心裝置的網路端點，以及 MQTT 代理程式操作所在的連接埠。
+ 更新 AWS IoT Greengrass 雲端服務中核心裝置的連線資訊。

用戶端裝置可以使用 Greengrass 雲端探索來擷取相關聯的核心裝置的連線資訊。然後，用戶端裝置可以嘗試連線到每個核心裝置，直到成功連線為止。

**注意**  <a name="client-device-component-context"></a>
用戶端裝置是連線至 Greengrass 核心裝置的本機 IoT 裝置，用於傳送 MQTT 訊息和要處理的資料。如需詳細資訊，請參閱[與本機 IoT 裝置互動](interact-with-local-iot-devices.md)。

IP 偵測器元件會將核心裝置的現有連線資訊取代為其偵測到的資訊。由於此元件會移除現有資訊，您可以使用 IP 偵測器元件，或手動管理連線資訊。

**Topics**
+ [版本](#ip-detector-component-versions)
+ [類型](#ip-detector-component-type)
+ [作業系統](#ip-detector-component-os-support)
+ [要求](#ip-detector-component-requirements)
+ [相依性](#ip-detector-component-dependencies)
+ [Configuration](#ip-detector-component-configuration)
+ [本機日誌檔案](#ip-detector-component-log-file)
+ [變更記錄](#ip-detector-component-changelog)

## 版本
<a name="ip-detector-component-versions"></a>

此元件具有下列版本：
+ 2.2.x 版本
+ 2.1.x
+ 2.0.x

## 類型
<a name="ip-detector-component-type"></a>

<a name="public-component-type-plugin-para1"></a>此元件是外掛程式元件 (`aws.greengrass.plugin`)。[Greengrass 核心](greengrass-nucleus-component.md)會在與核心相同的 Java 虛擬機器 (JVM) 中執行此元件。當您在核心裝置上變更此元件的版本時，核心會重新啟動。

<a name="public-component-type-plugin-para2"></a>此元件使用與 Greengrass 核相同的日誌檔案。如需詳細資訊，請參閱[監控 AWS IoT Greengrass 日誌](monitor-logs.md)。

<a name="public-component-type-more-information"></a>如需詳細資訊，請參閱[元件類型](develop-greengrass-components.md#component-types)。

## 作業系統
<a name="ip-detector-component-os-support"></a>

此元件可以安裝在執行下列作業系統的核心裝置上：
+ Linux
+ Windows

## 要求
<a name="ip-detector-component-requirements"></a>

此元件有下列需求：
+ [Greengrass 服務角色](greengrass-service-role.md)必須與您的 相關聯， AWS 帳戶 並允許 `iot:GetThingShadow`和 `iot:UpdateThingShadow`許可。
+ 核心裝置的 AWS IoT 政策必須允許 `greengrass:UpdateConnectivityInfo`許可。如需詳細資訊，請參閱[AWS IoT 資料平面操作的 政策](device-auth.md#iot-policies)及[支援用戶端裝置的最低 AWS IoT 政策](device-auth.md#client-device-support-minimal-iot-policy)。
+ 如果您將核心裝置的 MQTT 代理程式元件設定為使用預設連接埠 8883 以外的連接埠，則必須使用 IP 偵測器 v2.1.0 或更新版本。將其設定為報告代理程式操作所在的連接埠。
+ 如果您有複雜的網路設定，IP 偵測器元件可能無法識別用戶端裝置可以連線到核心裝置的端點。如果 IP 偵測器元件無法管理端點，您必須改為手動管理核心裝置端點。例如，如果核心裝置位於轉送 MQTT 代理程式連接埠的路由器後方，您必須將路由器的 IP 地址指定為核心裝置的端點。如需詳細資訊，請參閱[管理核心裝置端點](manage-core-device-endpoints.md)。
+ IP 偵測器元件支援在 VPC 中執行。

## 相依性
<a name="ip-detector-component-dependencies"></a>

當您部署元件時， AWS IoT Greengrass 也會部署其相依性的相容版本。這表示您必須符合元件及其所有相依性的要求，才能成功部署元件。本節列出此元件[發行版本的](#ip-detector-component-changelog)相依性，以及為每個相依性定義元件版本的語意版本限制。您也可以在 [AWS IoT Greengrass 主控台](https://console.aws.amazon.com//greengrass)中檢視每個版本元件的相依性。在元件詳細資訊頁面上，尋找**相依性**清單。

------
#### [ 2.2.3 ]

下表列出此元件 2.2.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.17.0 | 軟式 | 

------
#### [ 2.2.2 ]

下表列出此元件 2.2.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.16.0 | 軟式 | 

------
#### [ 2.2.1 ]

下表列出此元件 2.2.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.15.0 | 軟式 | 

------
#### [ 2.2.0 ]

下表列出此元件 2.2.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.14.0 | 軟式 | 

------
#### [ 2.1.8 – 2.1.9 ]

下表列出此元件 2.1.8 和 2.1.9 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.13.0 | 軟式 | 

------
#### [ 2.1.7 ]

下表列出此元件 2.1.7 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.12.0 | 軟式 | 

------
#### [ 2.1.6 ]

下表列出此元件 2.1.6 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.11.0 | 軟式 | 

------
#### [ 2.1.5 ]

下表列出此元件 2.1.5 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.10.0 | 軟式 | 

------
#### [ 2.1.4 ]

下表列出此元件 2.1.4 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.9.0 | 軟式 | 

------
#### [ 2.1.3 ]

下表列出此元件 2.1.3 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.8.0 | 軟式 | 

------
#### [ 2.1.2 ]

下表列出此元件 2.1.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.7.0 | 軟式 | 

------
#### [ 2.1.1 ]

下表列出此元件 2.1.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.6.0 | 軟式 | 

------
#### [ 2.1.0 and 2.0.2 ]

下表列出此元件 2.1.0 和 2.0.2 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.5.0 | 軟式 | 

------
#### [ 2.0.1 ]

下表列出此元件 2.0.1 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.4.0 | 軟式 | 

------
#### [ 2.0.0 ]

下表列出此元件 2.0.0 版的相依性。


| 相依性 | 相容版本 | 相依性類型 | 
| --- | --- | --- | 
| [Greengrass 核](greengrass-nucleus-component.md) | >=2.2.0 <2.3.0 | 軟式 | 

------

如需元件相依性的詳細資訊，請參閱[元件配方參考](component-recipe-reference.md#recipe-reference-component-dependencies)。

## Configuration
<a name="ip-detector-component-configuration"></a>

此元件提供下列組態參數，您可以在部署元件時自訂這些參數。

------
#### [ 2.2.x ]

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>（選用） 此元件偵測到 IP 地址時要報告的 MQTT 代理程式連接埠。如果您將 MQTT 代理程式設定為使用與預設連接埠 8883 不同的連接埠，則必須指定此參數。  
預設：`8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 回送地址。這些是 IP 地址，例如 `localhost`，裝置可以自行通訊。在核心裝置和用戶端裝置在相同系統上執行的測試環境中使用此選項。  
預設：`false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 [連結本機地址](https://en.wikipedia.org/wiki/Link-local_address)。如果核心裝置的網路沒有動態主機組態協定 (DHCP) 或靜態指派的 IP 地址，請使用此選項。  
預設：`false`

`includeIPv6LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv6-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-loopback-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv6 回送地址。這些是 IP 地址，例如 `localhost`，裝置可以自行通訊。在核心裝置和用戶端裝置在相同系統上執行的測試環境中使用此選項。您必須將 `includeIPv4Addrs` 設定為 `false`，並將 `includeIPv6Addrs` 設定為 `true`，才能使用此選項。  
預設：`false`

`includeIPv6LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv6-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-link-local-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv6 [連結本機地址](https://en.wikipedia.org/wiki/Link-local_address)。如果核心裝置的網路沒有動態主機組態通訊協定 (DHCP) 或靜態指派的 IP 地址，請使用此選項。您必須將 `includeIPv4Addrs` 設定為 `false`，並將 `includeIPv6Addrs` 設定為 `true`，才能使用此選項。  
預設：`false`

`includeIPv4Addrs`  <a name="ip-detector-component-configuration-include-ipv4-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-addrs-definition"></a>（選用） 預設值設為 `true`。您可以啟用此選項來發佈核心裝置上找到的 IPv4 地址。  
預設：`true`

`includeIPv6Addrs`  <a name="ip-detector-component-configuration-include-ipv6-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-addrs-definition"></a>（選用） 您可以啟用此選項來發佈核心裝置上找到的 IPv6 地址。`includeIPv4Addrs`設定為 `false` 以使用此選項。  
預設：`false`

------
#### [ 2.1.x ]

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>（選用） 此元件偵測到 IP 地址時要報告的 MQTT 代理程式連接埠。如果您將 MQTT 代理程式設定為使用與預設連接埠 8883 不同的連接埠，則必須指定此參數。  
預設：`8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 回送地址。這些是 IP 地址，例如 `localhost`，裝置可以自行通訊。在核心裝置和用戶端裝置在相同系統上執行的測試環境中使用此選項。  
預設：`false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 [連結本機地址](https://en.wikipedia.org/wiki/Link-local_address)。如果核心裝置的網路沒有動態主機組態協定 (DHCP) 或靜態指派的 IP 地址，請使用此選項。  
預設：`false`

------
#### [ 2.0.x ]

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 回送地址。這些是 IP 地址，例如 `localhost`，裝置可以自行通訊。在核心裝置和用戶端裝置在相同系統上執行的測試環境中使用此選項。  
預設：`false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>（選用） 您可以啟用此選項來偵測和報告 IPv4 [連結本機地址](https://en.wikipedia.org/wiki/Link-local_address)。如果核心裝置的網路沒有動態主機組態協定 (DHCP) 或靜態指派的 IP 地址，請使用此選項。  
預設：`false`

------

## 本機日誌檔案
<a name="ip-detector-component-log-file"></a>

此元件使用與 [Greengrass 核](greengrass-nucleus-component.md)元件相同的日誌檔案。

------
#### [ Linux ]

```
/greengrass/v2/logs/greengrass.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\greengrass.log
```

------

**檢視此元件的日誌**
+ 在核心裝置上執行下列命令，以即時檢視此元件的日誌檔案。將 `/greengrass/v2`或 *C：\$1greengrass\$1v2* 取代為 AWS IoT Greengrass 根資料夾的路徑。

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

## 變更記錄
<a name="ip-detector-component-changelog"></a>

下表說明每個版本元件的變更。


|  **版本**  |  **變更**  | 
| --- | --- | 
|  2.2.3  |  針對 Greengrass nucleus 2.16.0 版更新版本。  | 
|  2.2.2  | 針對 Greengrass nucleus 2.15.0 版更新版本。 | 
|  2.2.1  | 針對 Greengrass nucleus 2.14.0 版更新版本。 | 
|  2.2.0  | 針對 Greengrass nucleus 2.13.0 版更新版本。 [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.8  | 針對 Greengrass nucleus 2.12.0 版更新版本。 | 
|  2.1.7  | 針對 Greengrass nucleus 2.11.0 版更新版本。 | 
|  2.1.6  | 針對 Greengrass nucleus 2.10.0 版更新版本。 | 
|  2.1.5  | 針對 Greengrass nucleus 2.9.0 版更新版本。 | 
|  2.1.4  | 針對 Greengrass nucleus 2.8.0 版更新版本。 | 
|  2.1.3  |  針對 Greengrass nucleus 2.7.0 版更新版本。  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.1  |  針對 Greengrass nucleus 2.5.0 版更新版本。  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.0.2  |  針對 Greengrass nucleus 2.4.0 版更新版本。  | 
|  2.0.1  |  針對 Greengrass nucleus 2.3.0 版更新版本。  | 
|  2.0.0  |  初始版本。  | 