Ověření propustnosti sítě VPN do virtuální sítě
Připojení brány VPN umožňuje vytvořit zabezpečené připojení mezi různými místy mezi vaší virtuální sítí v Rámci Azure a vaší místní IT infrastrukturou.
Tento článek ukazuje, jak ověřit propustnost sítě z místních prostředků na virtuální počítač Azure.
Poznámka:
Cílem tohoto článku je pomoct s diagnostikou a řešením běžných problémů. Pokud se vám nedaří problém vyřešit pomocí následujících informací, obraťte se na podporu.
Přehled
Připojení brány VPN zahrnuje následující komponenty:
- Místní zařízení VPN (zobrazení seznamu ověřených zařízení VPN))
- Veřejný internet
- Azure VPN Gateway
- Virtuální počítač Azure
Následující diagram znázorňuje logické připojení místní sítě k virtuální síti Azure prostřednictvím sítě VPN.
Výpočet maximálního očekávaného příchozího a výchozího přenosu dat
- Určete požadavky na standardní propustnost vaší aplikace.
- Určete limity propustnosti služby Azure VPN Gateway. Nápovědu najdete v části Skladové položky brány v části Informace o službě VPN Gateway.
- Určete pokyny k propustnosti virtuálního počítače Azure pro velikost virtuálního počítače.
- Určete šířku pásma poskytovatele internetových služeb.
- Vypočítejte očekávanou propustnost tím, že vezmete nejnižší šířku pásma virtuálního počítače, služby VPN Gateway nebo zprostředkovatele internetových služeb. měřeno v Megabitech za sekundu (/) děleno osmi (8). Tento výpočet vám poskytne megabajty za sekundu.
Pokud vaše počítaná propustnost nesplňuje požadavky vaší aplikace na standardní propustnost, musíte zvýšit šířku pásma prostředku, který jste identifikovali jako kritické místo. Pokud chcete změnit velikost služby Azure VPN Gateway, přečtěte si téma Změna skladové položky brány. Pokud chcete změnit velikost virtuálního počítače, přečtěte si téma Změna velikosti virtuálního počítače. Pokud nemáte očekávanou šířku pásma internetu, můžete se také obrátit na svého zprostředkovatele internetových služeb.
Poznámka:
Propustnost služby VPN Gateway je agregovaná ze všech připojení Typu Site-to-Site\VNET-to-VNET nebo Point-to-Site.
Ověření propustnosti sítě pomocí nástrojů pro měření výkonu
Toto ověření by se mělo provést během nepeakových hodin, protože sytost propustnosti tunelu VPN během testování neposkytuje přesné výsledky.
Nástroj, který používáme pro tento test, je iPerf, který funguje v systémech Windows i Linux a má režim klienta i serveru. Pro virtuální počítače s Windows je omezený na 3 Gb/s.
Tento nástroj neprovádí žádné operace čtení a zápisu na disk. Vytváří výhradně samogenerovaný provoz TCP z jednoho konce do druhého. Generuje statistiky založené na experimentování, které měří šířku pásma dostupnou mezi uzly klienta a serveru. Při testování mezi dvěma uzly funguje jeden uzel jako server a druhý uzel funguje jako klient. Po dokončení tohoto testu doporučujeme obrátit role uzlů a otestovat na obou uzlech propustnost nahrávání i stahování.
Stáhnout iPerf
Stáhněte si iPerf. Podrobnosti najdete v dokumentaci k iPerf.
Poznámka:
Produkty třetích stran, které jsou popsány v tomto článku, jsou vyráběny společnostmi, které jsou nezávislé na Společnosti Microsoft. Společnost Microsoft neposkytuje žádnou záruku (implicitně předpokládanou ani jinou) týkající se výkonu a spolehlivosti těchto produktů.
Spuštění iPerf (iperf3.exe)
Povolte pravidlo NSG/ACL, které povoluje provoz (pro testování veřejných IP adres na virtuálním počítači Azure).
Na obou uzlech povolte výjimku brány firewall pro port 5001.
Windows: Jako správce spusťte následující příkaz:
netsh advfirewall firewall add rule name="Open Port 5001" dir=in action=allow protocol=TCP localport=5001
Pokud chcete pravidlo po dokončení testování odebrat, spusťte tento příkaz:
netsh advfirewall firewall delete rule name="Open Port 5001" protocol=TCP localport=5001
Azure Linux: Image Azure Linuxu mají permissivní brány firewall. Pokud na portu naslouchá nějaká aplikace, provoz se povolí. Vlastní image, které jsou zabezpečené, můžou potřebovat explicitně otevřené porty. Mezi běžné brány firewall operačního systému Linux patří
iptables
,ufw
nebofirewalld
.Na uzlu serveru přejděte do adresáře, do kterého se extrahuje iperf3.exe. Potom spusťte iPerf v režimu serveru a nastavte ho tak, aby naslouchal na portu 5001 jako následující příkazy:
cd c:\iperf-3.1.2-win65 iperf3.exe -s -p 5001
Poznámka:
Port 5001 je přizpůsobitelný tak, aby zohlednil konkrétní omezení brány firewall ve vašem prostředí.
Na klientském uzlu přejděte do adresáře, ve kterém se extrahuje nástroj iperf, a spusťte následující příkaz:
iperf3.exe -c <IP of the iperf Server> -t 30 -p 5001 -P 32
Klient směruje 30 sekund provozu na portu 5001 na server. Příznak -P označuje, že provádíme 32 souběžných připojení k uzlu serveru.
Následující obrazovka ukazuje výstup z tohoto příkladu:
(VOLITELNÉ) Pokud chcete zachovat výsledky testování, spusťte tento příkaz:
iperf3.exe -c IPofTheServerToReach -t 30 -p 5001 -P 32 >> output.txt
Po dokončení předchozích kroků proveďte stejné kroky s obrácenými rolemi, aby uzel serveru byl nyní klientským uzlem a naopak.
Poznámka:
Iperf není jediný nástroj. NTTTCP je alternativní řešení pro testování.
Testování virtuálních počítačů s Windows
Načtení Latte.exe na virtuální počítače
Stáhněte si nejnovější verzi Latte.exe
Zvažte umístění Latte.exe do samostatné složky, například c:\tools
Povolit Latte.exe přes bránu Windows Firewall
Na příjemci vytvořte v bráně Windows Firewall pravidlo Povolit, které umožní doručení Latte.exe provozu. Nejjednodušší je povolit celý Latte.exe program podle názvu, nikoli povolit příchozí konkrétní porty TCP.
Povolit Latte.exe přes bránu Windows Firewall, jako je tato:
netsh advfirewall firewall add rule program=<PATH>\latte.exe name="Latte" protocol=any dir=in action=allow enable=yes profile=ANY
Pokud jste například zkopírovali latte.exe do složky "c:\tools", jedná se o příkaz.
netsh advfirewall firewall add rule program=c:\tools\latte.exe name="Latte" protocol=any dir=in action=allow enable=yes profile=ANY
Spouštění testů latence
Spusťte latte.exe přijímače (spusťte příkaz CMD, ne z PowerShellu):
latte -a <Receiver IP address>:<port> -i <iterations>
Přibližně 65 tisíc iterací je dostatečně dlouhý, aby se vrátily reprezentativní výsledky.
Jakékoli dostupné číslo portu je v pořádku.
Pokud má virtuální počítač IP adresu 10.0.0.4, bude vypadat takto:
latte -c -a 10.0.0.4:5005 -i 65100
Spuštění latte.exe odesílatele (spuštění z CMD, ne z PowerShellu)
latte -c -a <Receiver IP address>:<port> -i <iterations>
Výsledný příkaz je stejný jako u příjemce s výjimkou přidání "-c" k označení, že se jedná o "klienta" nebo odesílatele.
latte -c -a 10.0.0.4:5005 -i 65100
Počkejte na výsledky. V závislosti na tom, jak daleko jsou virtuální počítače, může trvat několik minut. Než spustíte delší testy, zvažte spuštění s menším počtem iterací, než se testuje úspěšně.
Testování virtuálních počítačů s Linuxem
K otestování virtuálních počítačů použijte SockPerf .
Instalace SockPerf na virtuální počítače
Na virtuálních počítačích s Linuxem (SENDER i RECEIVER) spusťte tyto příkazy pro přípravu SockPerf na virtuálních počítačích:
RHEL – Instalace GITu a dalších užitečných nástrojů
sudo yum install gcc -y -q
sudo yum install git -y -q
sudo yum install gcc-c++ -y
sudo yum install ncurses-devel -y
sudo yum install -y automake
Ubuntu – Instalace GITu a dalších užitečných nástrojů
sudo apt-get install build-essential -y
sudo apt-get install git -y -q
sudo apt-get install -y autotools-dev
sudo apt-get install -y automake
Bash – vše
Z příkazového řádku Bash (předpokládá se, že je nainstalovaný Git)
git clone https://github.com/mellanox/sockperf
cd sockperf/
./autogen.sh
./configure --prefix=
Pomalejší, může to trvat několik minut.
make
Nastavení instalace je rychlé
sudo make install
Spuštění SockPerf na virtuálních počítačích
Ukázkové příkazy po instalaci Server/Receiver – předpokládá, že IP adresa serveru je 10.0.0.4.
sudo sockperf sr --tcp -i 10.0.0.4 -p 12345 --full-rtt
Klient – předpokládá, že IP adresa serveru je 10.0.0.4.
sockperf ping-pong -i 10.0.0.4 --tcp -m 1400 -t 101 -p 12345 --full-rtt
Poznámka:
Během testování propustnosti mezi virtuálním počítačem a bránou se ujistěte, že během testování propustnosti neexistují žádné zprostředkující segmenty směrování (např. virtuální zařízení). Pokud dochází k nízkým výsledkům (z hlediska celkové propustnosti) pocházejících z výše uvedených testů iPERF/NTTTCP, přečtěte si tento článek a seznamte se s klíčovými faktory za možnými hlavními příčinami problému:
Konkrétně analýza trasování zachytávání paketů (Wireshark/Network Monitor) shromážděná paralelně z klienta a serveru během těchto testů pomáhá při hodnocení špatného výkonu. Mezi tyto trasování může patřit ztráta paketů, vysoká latence, velikost MTU. fragmentace, okno TCP 0, fragmenty mimo pořadí atd.
Řešení problémů s pomalým kopírováním souborů
I když byla celková propustnost vyhodnocená předchozími kroky (iPERF/NTTTCP/etc.) dobrá, může docházet k pomalému zpomalování souborů při použití Průzkumníka Windows nebo přetažení relace protokolu RDP. Tento problém je obvykle způsoben jedním nebo oběma následujícími faktory:
Při kopírování souborů nepoužívají aplikace pro kopírování souborů, jako je Průzkumník Windows nebo RDP, více vláken. Pokud chcete dosáhnout lepšího výkonu, použijte k kopírování souborů vícevláknovou aplikaci, jako je Richcopy , pomocí 16 nebo 32 vláken. Chcete-li změnit číslo vlákna pro kopírování souboru v richcopy, klepněte na tlačítko Možnosti kopírování akce>Kopírování Kopie>kopie.
Poznámka:
Ne všechny aplikace fungují stejně a ne všechny aplikace nebo procesy využívají všechna vlákna. Pokud test spustíte, uvidíte, že některá vlákna jsou prázdná a nebudou poskytovat přesné výsledky propustnosti. Pokud chcete zkontrolovat výkon přenosu souborů aplikace, použijte více vláken zvýšením počtu vláken za sebou nebo snížením, abyste našli optimální propustnost aplikace nebo přenosu souborů.
Nedostatek rychlosti čtení a zápisu na disku virtuálního počítače Další informace najdete v tématu Řešení potíží se službou Azure Storage.
Externí rozhraní místního zařízení
Zmínili jsme podsítě místních rozsahů, ke kterým chcete, aby se Azure dostala přes síť VPN v bráně místní sítě. Současně definujte adresní prostor virtuální sítě v Azure na místní zařízení.
Brána založená na směrování: Zásady nebo selektor provozu pro sítě VPN založené na směrování jsou nakonfigurované jako any-to-any (nebo zástupné znaky).
Brána založená na zásadách: Sítě VPN založené na zásadách šifrují a směrují pakety prostřednictvím tunelů IPsec na základě kombinací předpon adres mezi vaší místní sítí a virtuální sítí Azure. Zásada (nebo selektor provozu) se většinou v konfiguraci sítě VPN definuje jako přístupový seznam.
Připojení UsePolicyBasedTrafficSelector : (UsePolicyBasedTrafficSelectors) pro $True na připojení nakonfiguruje bránu VPN Azure tak, aby se připojila k místní bráně VPN založené na zásadách. Pokud povolíte PolicyBasedTrafficSelectors, musíte zajistit, aby vaše zařízení VPN má odpovídající selektory provozu definované se všemi kombinacemi předpon místní sítě (brány místní sítě) a z předpon virtuální sítě Azure místo předpon typu any-to-any.
Nevhodná konfigurace může vést k častému odpojení v tunelu, poklesu paketů, špatné propustnosti a latenci.
Kontrola latence
Latenci můžete zkontrolovat pomocí následujících nástrojů:
- WinMTR
- TCPTraceroute
ping
apsping
(Tyto nástroje můžou poskytnout dobrý odhad rtT, ale nedají se použít ve všech případech.)
Pokud si všimnete špičky vysoké latence v jakémkoli segmentu směrování před vstupem do páteřní sítě MS Network, možná budete chtít pokračovat v dalším šetření u poskytovatele internetových služeb.
Pokud se z segmentů směrování v rámci "msn.net" zaznamená neobvyklá špička latence, obraťte se na podporu MS a požádejte o další šetření.
Další kroky
Další informace nebo nápovědu najdete na následujícím odkazu: