Konfigurasi jaringan bagi Azure IoT Edge untuk Linux pada Windows
Berlaku untuk: IoT Edge 1.4
Penting
IoT Edge 1.5 LTS dan IoT Edge 1.4 adalah rilis yang didukung. IoT Edge 1.4 LTS adalah akhir masa pakai pada 12 November 2024. Jika Anda menggunakan rilis sebelumnya, lihat Memperbarui IoT Edge.
Artikel ini membantu Anda memutuskan opsi jaringan mana yang terbaik untuk skenario Anda dan memberikan wawasan tentang persyaratan konfigurasi IoT Edge untuk Linux di Windows (EFLOW).
Untuk menyambungkan komputer virtual IoT Edge untuk Linux di Windows (EFLOW) melalui jaringan ke host Anda, ke komputer virtual lain di host Windows Anda, dan ke perangkat/lokasi lain di jaringan eksternal, jaringan komputer virtual harus dikonfigurasi dengan sesuai.
Cara term mudah untuk membuat jaringan dasar pada SKU Klien Windows adalah dengan menggunakan sakelar default, yang sudah dibuat saat mengaktifkan fitur Windows Hyper-V. Namun, pada perangkat SKU Windows Server, jaringan itu sedikit lebih rumit karena tidak ada sakelar default yang tersedia. Untuk informasi selengkapnya tentang pembuatan sakelar virtual untuk Windows Server, lihat Membuat sakelar virtual untuk Linux di Windows.
Untuk informasi selengkapnya tentang konsep jaringan EFLOW, lihat IoT Edge untuk Linux di jaringan Windows.
Mengonfigurasi sakelar virtual VM
Langkah pertama sebelum menyebarkan komputer virtual EFLOW adalah menentukan jenis sakelar virtual mana yang Anda gunakan. Untuk informasi selengkapnya tentang sakelar virtual yang didukung EFLOW, lihat Pilihan sakelar virtual EFLOW. Setelah Anda menentukan jenis sakelar virtual yang ingin Anda gunakan, pastikan untuk membuat sakelar virtual dengan benar. Untuk informasi selengkapnya tentang pembuatan sakelar virtual, lihat Membuat sakelar virtual untuk komputer virtual Hyper-V.
Catatan
Jika Anda menggunakan klien Windows dan ingin menggunakan sakelar default, maka tidak diperlukan pembuatan sakelar dan tidak diperlukan -vSwitchType
-vSwitchName
parameter.
Catatan
Jika Anda menggunakan komputer virtual Windows di dalam infrastruktur VMware dan sakelar eksternal, silakan lihat virtualisasi berlapis EFLOW.
Setelah membuat sakelar virtual dan sebelum memulai penyebaran Anda, pastikan bahwa nama dan jenis sakelar virtual Anda disiapkan dengan benar dan tercantum di bawah OS host Windows. Untuk mencantumkan semua sakelar virtual di OS host Windows Anda, dalam sesi PowerShell yang ditingkatkan, gunakan cmdlet PowerShell berikut:
Get-VmSwitch
Tergantung pada sakelar virtual host Windows, outputnya harus mirip dengan yang berikut ini:
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
Default Switch Internal
IntOff Internal
EFLOW-Ext External
Untuk menggunakan sakelar virtual tertentu (internal atau eksternal), pastikan Anda menentukan parameter yang benar: -vSwitchName
dan vSwitchType
. Misalnya, jika Anda ingin menyebarkan VM EFLOW dengan sakelar eksternal bernama EFLOW-Ext, maka dalam sesi PowerShell yang ditingkatkan, gunakan perintah berikut:
Deploy-Eflow -vSwitchType "External" -vSwitchName "EFLOW-Ext"
Mengonfigurasi alokasi alamat IP VM
Langkah kedua setelah memutuskan jenis sakelar virtual yang Anda gunakan adalah menentukan jenis alokasi alamat IP sakelar virtual. Untuk informasi selengkapnya tentang opsi alokasi IP, lihat Alokasi IP yang didukung EFLOW. Bergantung pada jenis sakelar virtual yang Anda gunakan, pastikan untuk menggunakan mekanisme alokasi alamat IP yang didukung.
Secara default, jika tidak ada alamat IP statis yang disiapkan, VM EFLOW mencoba mengalokasikan alamat IP ke sakelar virtual menggunakan DHCP. Pastikan bahwa ada server DHCP di jaringan sakelar virtual; jika tidak tersedia, penginstalan EFLOW VM gagal mengalokasikan alamat IP dan penginstalan gagal. Jika Anda menggunakan sakelar default, maka tidak perlu memeriksa server DHCP, karena sakelar virtual sudah memiliki DHCP secara default. Namun, jika menggunakan sakelar virtual internal atau eksternal , Anda dapat memeriksa menggunakan langkah-langkah berikut:
- Buka prompt perintah.
- Menampilkan semua konfigurasi dan informasi IP
ipconfig /all
- Jika Anda menggunakan sakelar virtual eksternal , periksa antarmuka jaringan yang digunakan untuk membuat sakelar virtual. Jika Anda menggunakan sakelar virtual internal , cukup cari nama yang digunakan untuk sakelar. Setelah sakelar berada, periksa apakah
DHCP Enabled
bertuliskan Ya atau Tidak, dan periksa alamatnyaDHCP server
.
Jika Anda menggunakan IP statis, Anda harus menentukan tiga parameter selama penyebaran EFLOW: -ip4Address
, ip4GatewayAddress
dan ip4PrefixLength
. Jika satu parameter hilang atau salah, penginstalan VM EFLOW gagal mengalokasikan alamat IP dan penginstalan gagal. Untuk informasi selengkapnya tentang penyebaran VM EFLOW, lihat Fungsi PowerShell untuk IoT Edge untuk Linux di Windows. Misalnya, jika Anda ingin menyebarkan VM EFLOW dengan sakelar eksternal bernama EFLOW-Ext, dan konfigurasi IP statis, dengan alamat IP yang sama dengan 192.168.0.2, alamat IP gateway yang sama dengan 192.168.0.1 dan panjang awalan IP sama dengan 24, maka dalam sesi PowerShell yang ditinggikan gunakan perintah berikut:
Deploy-Eflow -vSwitchType "External" -vSwitchName "EFLOW-Ext" -ip4Address "192.168.0.2" -ip4GatewayAddress "192.168.0.1" -ip4PrefixLength "24"
Tip
VM EFLOW akan menyimpan alamat MAC yang sama untuk sakelar virtual utama (digunakan selama penyebaran) di seluruh boot ulang. Jika Anda menggunakan reservasi alamat MAC DHCP, Anda bisa mendapatkan alamat MAC sakelar virtual utama menggunakan cmdlet PowerShell: Get-EflowVmAddr
.
Periksa alokasi IP
Ada beberapa cara untuk memeriksa alamat IP yang dialokasikan ke VM EFLOW. Pertama, menggunakan sesi PowerShell yang ditingkatkan, gunakan cmdlet EFLOW:
Get-EflowVmAddr
Output harus mirip dengan yang berikut ini:
C:\> Get-EflowVmAddr
[03/31/2022 12:54:31] Querying IP and MAC addresses from virtual machine (DESKTOP-EFLOW)
- Virtual machine MAC: 00:15:5d:4e:15:2c
- Virtual machine IP : 172.27.120.111 retrieved directly from virtual machine
00:15:5d:4e:15:2c
172.27.120.111
Cara lain, adalah menggunakan Connect-Eflow
cmdlet untuk jarak jauh ke VM, dan kemudian Anda dapat menggunakan ifconfig eth0
perintah bash, dan memeriksa antarmuka eth0 . Output harus sama dengan berikut ini.
eth0 Link encap:Ethernet HWaddr 00:15:5d:4e:15:2c
inet addr:172.27.120.111 Bcast:172.27.127.255 Mask:255.255.240.0
inet6 addr: fe80::215:5dff:fe4e:152c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5636 errors:0 dropped:0 overruns:0 frame:0
TX packets:2214 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:766832 (766.8 KB) TX bytes:427274 (427.2 KB)
Mengonfigurasi server DNS VM
Secara default, komputer virtual EFLOW tidak memiliki konfigurasi DNS. Penyebaran menggunakan DHCP mencoba mendapatkan konfigurasi DNS yang disebarkan oleh server DHCP. Jika Anda menggunakan IP statis, server DNS perlu disiapkan secara manual. Untuk informasi selengkapnya tentang DNS EFLOW VM, lihat Konfigurasi DNS EFLOW.
Untuk memeriksa server DNS yang digunakan oleh antarmuka default (eth0), Anda bisa menggunakan perintah berikut:
resolvectl | grep eth0 -A 8
Outputnya harus mirip dengan yang berikut ini. Periksa alamat IP bidang "Server DNS Saat Ini" dan "Server DNS" dari daftar. Jika tidak ada alamat IP, atau alamat IP bukan alamat IP server DNS yang valid, maka layanan DNS tidak akan berfungsi.
Link 2 (eth0)
Current Scopes: DNS
LLMNR setting: yes
MulticastDNS setting: no
DNSOverTLS setting: no
DNSSEC setting: no
DNSSEC supported: no
Current DNS Server: 172.27.112.1
DNS Servers: 172.27.112.1
Jika Anda perlu menyiapkan alamat server DNS secara manual, Anda bisa menggunakan cmdlet Set-EflowVmDNSServers
EFLOW PowerShell . Untuk informasi selengkapnya tentang konfigurasi DNS VM EFLOW, lihat Fungsi PowerShell untuk IoT Edge untuk Linux di Windows.
Periksa resolusi DNS
Ada beberapa cara untuk memeriksa resolusi DNS.
Pertama, dari dalam EFLOW VM, gunakan resolvectl query
perintah untuk mengkueri URL tertentu. Misalnya, untuk memeriksa apakah resolusi nama berfungsi untuk alamat microsoft.com, gunakan:
resolvectl query microsoft.com
Output harus sama dengan berikut ini.
PS C:\> resolvectl query
microsoft.com: 40.112.72.205
40.113.200.201
13.77.161.179
104.215.148.63
40.76.4.15
-- Information acquired via protocol DNS in 1.9ms.
-- Data is authenticated: no
Anda juga dapat menggunakan dig
perintah untuk mengkueri URL tertentu. Misalnya, untuk memeriksa apakah resolusi nama berfungsi untuk alamat microsoft.com, gunakan:
dig microsoft.com
Output harus sama dengan berikut ini.
PS C:\> dig microsoft.com
; <<>> DiG 9.16.22 <<>> microsoft.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 36427
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;microsoft.com. IN A
;; ANSWER SECTION:
microsoft.com. 0 IN A 40.112.72.205
microsoft.com. 0 IN A 40.113.200.201
microsoft.com. 0 IN A 13.77.161.179
microsoft.com. 0 IN A 104.215.148.63
microsoft.com. 0 IN A 40.76.4.15
;; Query time: 11 msec
;; SERVER: 127.0
Langkah berikutnya
Baca selengkapnya tentang Azure IoT Edge untuk Linux di Keamanan Windows.
Tetap up-to-date dengan IoT Edge terbaru untuk Linux pada pembaruan Windows.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk