IoT Edge för Linux i Windows-nätverk
Gäller för: IoT Edge 1.4
Viktigt!
Azure IoT Edge 1.5 LTS och IoT Edge 1.4 stöds. IoT Edge 1.4 LTS når slutet av tjänsten den 12 november 2024. Om du har en tidigare version läser du Uppdatera IoT Edge.
Den här artikeln innehåller information om hur du konfigurerar nätverk mellan windows-värdoperativsystemet och den virtuella datorn IoT Edge för Linux på Windows (EFLOW). EFLOW använder en virtuell CBL-Mariner Linux-dator för att köra IoT Edge-moduler. Mer information om EFLOW-arkitektur finns i Vad är Azure IoT Edge för Linux i Windows.
Nätverk
För att upprätta en kommunikationskanal mellan Windows-värdoperativsystemet och den virtuella EFLOW-datorn använder vi Hyper-V-nätverksstacken. Mer information om Hyper-V-nätverk finns i Grunderna för Hyper-V-nätverk. Grundläggande nätverk i EFLOW är enkelt. den använder två delar, en virtuell växel och ett virtuellt nätverk.
Det enklaste sättet att upprätta grundläggande nätverk på Windows-klient-SKU:er är att använda standardväxeln som redan har skapats av Hyper-V-funktionen. Om ingen specifik virtuell växel anges med flaggorna och under EFLOW-distributionen -vSwitchName
skapas den virtuella datorn med standardväxeln.-vSwitchType
På Windows Server-SKU:er är nätverk lite mer komplicerat eftersom det inte finns någon tillgänglig standardväxel . Det finns dock en omfattande guide om hur du skapar virtuella Windows-växlar i Azure IoT Edge för Linux.
Om du vill hantera olika typer av nätverk kan du använda olika typer av virtuella växlar och lägga till flera virtuella nätverkskort.
Alternativ för virtuell växel
EFLOW stöder två typer av virtuella Hyper-V-växlar: interna och externa. Du väljer vilken av var och en som du vill använda när du skapade den före EFLOW-distributionen. Du kan använda Hyper-V Manager eller Hyper-V-modulen för Windows PowerShell för att skapa och hantera virtuella växlar. Mer information om hur du skapar en virtuell växel finns i Skapa en virtuell växel för virtuella Hyper-V-datorer.
Du kan göra vissa ändringar i en virtuell växel när du har skapat den. Det går till exempel att ändra en befintlig växel till en annan typ, men det kan påverka nätverksfunktionerna för den virtuella EFLOW-datorn som är ansluten till den växeln. Därför rekommenderar vi inte att du ändrar konfigurationen för den virtuella växeln om du inte har gjort ett misstag eller behöver testa något.
Beroende på om den virtuella EFLOW-datorn distribueras i en Windows-klient-SKU eller En Windows Server SKU-enhet stöder vi olika typer av växlar, enligt följande tabell.
Typ av virtuell växel | Windows-klient-SKU:er | Windows Server-SKU:er |
---|---|---|
Externt | ||
Intern | - | |
Standardväxel | - |
Extern virtuell växel – Ansluter till ett kabelanslutet fysiskt nätverk genom att binda till ett fysiskt nätverkskort. Det ger virtuella datorer åtkomst till ett fysiskt nätverk för att kommunicera med enheter i ett externt nätverk. Dessutom kan virtuella datorer på samma Hyper-V-server kommunicera med varandra.
Intern virtuell växel – Ansluter till ett nätverk som endast kan användas av de virtuella datorer som körs på värden som har den virtuella växeln och mellan värden och de virtuella datorerna.
Kommentar
Standardväxeln är en viss intern virtuell växel som skapas som standard när Hyper-V har aktiverats i Windows-klient-SKU:er. Den virtuella växeln har redan en DHCP-server för IP-tilldelningar, ICS (Internet Connection Sharing) aktiverat och en NAT-tabell. För EFLOW-ändamål är standardväxeln en virtuell intern växel som kan användas utan ytterligare konfiguration.
IP-adressallokeringar
Om du vill aktivera IP-kommunikation för EFLOW VM-nätverk måste den virtuella datorn ha en tilldelad IP-adress. Den här IP-adressen kan konfigureras med två olika metoder: statisk IP eller DHCP.
Beroende på vilken typ av virtuell växel som används stöder den virtuella EFLOW-datorn olika IP-allokeringar, enligt följande tabell.
Typ av virtuell växel | Statisk IP-adress | DHCP |
---|---|---|
Externt | ||
Intern | ||
Standardväxel | - |
Statisk IP – Den här IP-adressen tilldelas permanent till den virtuella EFLOW-datorn under installationen och ändras inte mellan omstarter av EFLOW VM eller Windows-värd. Statiska IP-adresser har vanligtvis två versioner: IPv4 och IPv6; EFLOW stöder dock endast statisk IP för IPv4-adresser. I nätverk som använder statisk IP har varje enhet i nätverket sin adress utan överlappning. Under EFLOW-installationen måste du ange ip4-adressen för den virtuella EFLOW-datorn(
-ip4Address
), IP4-prefixets längd(-ip4PrefixLength
) och ip4-standardadressen för gatewayen(-ip4GatewayAddress
). Alla tre parametrarna måste vara indata för korrekt konfiguration.Om du till exempel vill distribuera den virtuella EFLOW-datorn med hjälp av en extern virtuell växel med namnet ExternalEflow med en statisk IP-adress 192.168.0.100, standardgatewayen 192.168.0.1 och en prefixlängd på 24 krävs följande distributionskommando
Deploy-Eflow -vSwitchName "ExternalEflow" -vswitchType "External" -ip4Address 192.168.0.100 -ip4GatewayAddress 192.168.0.1 -ip4PrefixLength 24
Varning
När du använder statisk IP måste de tre parametrarna (
ip4Address
,ip4GatewayAddres
,ip4PrefixLength
) användas. Om IP-adressen är ogiltig och används av en annan enhet på dig eller om gatewayadressen är felaktig kan EFLOW-installationen misslyckas eftersom den virtuella EFLOW-datorn inte kan hämta en IP-adress.DHCP – I motsats till statisk IP tilldelas den virtuella EFLOW-datorn vid användning av DHCP med en dynamisk IP-adress, vilket är en adress som kan ändras. Nätverket måste ha en DHCP-server konfigurerad och fungerar för att tilldela dynamiska IP-adresser. DHCP-servern tilldelar en ledig IP-adress till den virtuella EFLOW-datorn och andra som är anslutna till nätverket. När du distribuerar EFLOW med DHCP behövs därför ingen IP-adress, gatewayadress eller prefixlängd, eftersom DHCP-servern tillhandahåller all information.
Varning
När du distribuerar EFLOW med DHCP måste en DHCP-server finnas i nätverket som är anslutet till den virtuella växeln för den virtuella EFLOW-datorn. Om det inte finns någon DHCP-server kan EFLOW-installationen misslyckas eftersom den virtuella datorn inte kan hämta en IP-adress.
DNS
Domain Name System (DNS) översätter domännamn som kan läsas av människor (till exempel www.microsoft.com) till maskinläsbara IP-adresser (till exempel 192.0.2.44). Den virtuella EFLOW-datorn använder systembaserad (system- och tjänsthanterare), så DNS- eller namnmatchningstjänsterna tillhandahålls till lokala program och tjänster via den systemupplösade tjänsten.
Som standard innehåller DNS-konfigurationsfilen för den virtuella EFLOW-datorn den lokala stub 127.0.0.53 som den enda DNS-servern. Detta omdirigeras till filen /etc/resolve.conf , som används för att lägga till de namnservrar som används av systemet. Den lokala stuben är en DNS-server som körs lokalt för att lösa DNS-frågor. I vissa fall vidarebefordras dessa frågor till en annan DNS-server i nätverket och cachelagras sedan lokalt.
Det är möjligt att konfigurera den virtuella EFLOW-datorn så att den använder en specifik DNS-server eller en lista över servrar. Om du vill göra det kan du använda PowerShell-cmdleten Set-EflowVmDnsServers
. Mer information om DNS-konfiguration finns i PowerShell-funktioner för IoT Edge för Linux i Windows.
Om du vill kontrollera de DNS-servrar som tilldelats till den virtuella EFLOW-datorn använder du kommandot: resolvectl status
. Kommandots utdata visar en lista över DE DNS-servrar som konfigurerats för varje gränssnitt. I synnerhet är det viktigt att kontrollera eth0-gränssnittsstatusen , som är standardgränssnittet för EFLOW VM-kommunikationen. Kontrollera även IP-adresserna för fälten Aktuella DNS-servraroch DNS-servrar i listan. Om det inte finns någon IP-adress eller om IP-adressen inte är en giltig DNS-server-IP-adress fungerar inte DNS-tjänsten.
Statisk MAC-adress
Med Hyper-V kan du skapa virtuella datorer med en statisk eller dynamisk MAC-adress. När den virtuella EFLOW-datorn skapas genereras mac-adressen slumpmässigt och lagras lokalt för att behålla samma MAC-adress över virtuella datorer eller omstarter av Windows-värd. Om du vill fråga den virtuella EFLOW-datorns MAC-adress kan du använda följande kommando.
Get-EflowVmAddr
Flera nätverkskort (NÄTVERKSKORT)
Det finns många virtuella nätverksinstallationer och scenarier som kräver flera nätverkskort. Den virtuella EFLOW-datorn stöder anslutning av flera nätverkskort. Med flera nätverkskort kan du hantera nätverkstrafiken bättre. Du kan också isolera trafik mellan klientdelens nätverkskort och nätverkskort för serverdelen, eller separera dataplanstrafik från kommunikationen mellan hanteringsplanet.
Det finns till exempel många industriella IoT-scenarier som kräver anslutning av den virtuella EFLOW-datorn till en demilitariserad zon (DMZ) och till det offlinenätverk där alla OPC UA-kompatibla enheter är anslutna. Detta är bara ett av flera scenarier som kan stödjas genom att koppla flera nätverkskort till den virtuella EFLOW-datorn.
Mer information om flera nätverkskort finns i Stöd för flera nätverkskort.
Varning
När du använder funktionen EFLOW för flera nätverkskort kanske du vill konfigurera de olika vägarnas prioriteter. Som standard skapar EFLOW en standardväg per ehtX-gränssnitt som tilldelats den virtuella datorn och tilldelar en slumpmässig prioritet. Om alla gränssnitt är anslutna till Internet är slumpmässiga prioriteringar kanske inte ett problem. Men om en av nätverkskorten är ansluten till ett offlinenätverk kanske du vill prioritera online-nätverkskortet framför det offlinebaserade nätverkskortet för att få den virtuella EFLOW-datorn ansluten till Internet. Mer information om anpassad routning finns i EFLOW-routning.
Nästa steg
Läs mer om Azure IoT Edge för Linux på Windows-säkerhet.
Lär dig hur du hanterar nätverkskonfigurationen för EFLOW-nätverk för Azure IoT Edge för Linux i Windows