簡體   English   中英

Azure Function 的 IP 地址超出了 VNet 的范圍

[英]Azure Function has IP address out of VNet's range

我有一個使用高級計划的 Azure Function - 我需要它能夠將它與 Azure 上的虛擬網絡集成。 我已將我的應用程序與地址范圍172.24.2.0/26的 VNet 子網集成。

當我 SSH 進入我的 Azure Function 並運行ip a命令時

root@2a5f00591f61:~# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
3: eth0@if36: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 82:4d:fd:69:94:37 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 169.254.129.3/24 brd 169.254.129.255 scope global eth0
       valid_lft forever preferred_lft forever
5: vnet009kd8d60@if8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
    link/ether 62:6b:44:d9:b5:11 brd ff:ff:ff:ff:ff:ff link-netnsid 1
    inet 169.254.254.3/24 brd 169.254.254.255 scope global vnet009kd8d60
       valid_lft forever preferred_lft forever

我不明白為什么列出的 IP 都不在我的子網范圍內。 我在高級計划中創建 Function 的原因是為了在 VNet 中擁有它。 我的用例是我有一項服務只接受來自選定 VNet 的請求——包括我的 Function 使用的服務。 如何使我的函數的 IP 在子網范圍內?

//編輯我的 function 在其配置中有WEBSITE_VNET_ROUTE_ALL = 1

這是設計行為,當您在 VNet 集成后從 Azure function 訪問 SSH 工具時,我也會得到相同的結果。 As I can see, Azure assigns the Dynamic Configuration of IPv4 Link-Local Addresses to the SSH host after integrating the Azure Function within a VNet.

事實上,我們可以通過 Kudu 控制台 UI 中的環境變量WEBSITE_PRIVATE_IP檢查分配給實例的私有 IP。 閱讀manage-vnet-integration了解更多詳細信息。

分配給實例的私有 IP 通過環境變量 WEBSITE_PRIVATE_IP 公開。 Kudu 控制台 UI 還顯示了 Web 應用程序可用的環境變量列表。 此 IP 是從集成子網的地址范圍分配的。 對於區域 VNet 集成,WEBSITE_PRIVATE_IP 的值是來自委派子網地址范圍的 IP,對於需要網關的 VNet 集成,該值是來自在配置的點到站點地址池的地址范圍內的 IP虛擬網絡網關。 這是 Web 應用程序用於通過虛擬網絡連接到資源的 IP。

對於 Linux 應用服務計划, 在此處輸入圖像描述

對於 Windows 應用服務計划, 在此處輸入圖像描述

在這種情況下,如果您的服務僅接受來自選定 VNet 的請求,您可以通過添加應用程序設置WEBSITE_VNET_ROUTE_ALL=1來強制將所有出站流量發送到您的 VNet,並且您可以使用網絡安全組規則來限制其中的流量虛擬網絡。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM