Sdílet prostřednictvím


Zvláštní aspekty událostí Streamu a Teams v prostředích VPN

Poznámka

Tento článek je součástí sady článků, které se týkají optimalizace Microsoftu 365 pro vzdálené uživatele.

Přenos účastníků živých událostí Microsoftu 365 (včetně účastníků živých událostí vytvořených v Teams a těch, které se vytvářejí pomocí externího kodéru přes Teams, Stream nebo Viva Engage), provoz účastníků na radnici Microsoft Teams a provoz účastníků služby Stream na vyžádání je v současné době v seznamu adres URL/IP adres pro službu zařazen do kategorie Výchozí a Optimalizovat. Tyto koncové body jsou kategorizovány jako Výchozí , protože jsou hostované ve sítích CDN, které můžou používat i jiné služby. Zákazníci obvykle dávají přednost proxy tomuto typu provozu a používají všechny prvky zabezpečení, které se obvykle provádějí na koncových bodech, jako jsou tyto.

Mnoho zákazníků žádá o data adres URL/IP potřebná k připojení účastníků k událostem Stream nebo Teams přímo z místního internetového připojení, místo aby přes infrastrukturu VPN směrovali provoz s vysokým objemem a latencí. Obvykle to není možné bez vyhrazených oborů názvů a přesných informací o IP adresách koncových bodů, které nejsou k dispozici pro koncové body Microsoft 365 kategorizované jako Výchozí.

Pomocí následujících kroků povolte přímé připojení pro služby událostí Stream nebo Teams z klientů pomocí vynucené tunelové sítě VPN. Cílem tohoto řešení je poskytnout zákazníkům možnost vyhnout se směrování provozu účastníků událostí přes SÍŤ VPN, když dochází k vysokému síťovému provozu kvůli scénářům z práce z domova. Pokud je to možné, doporučujeme přistupovat ke službě přes kontrolující proxy server.

Poznámka

Při použití tohoto řešení můžou existovat prvky služby, které se nepřeloží na zadané IP adresy, a proto procházejí sítí VPN, ale velká část provozu s velkým objemem, jako jsou streamovaná data, by měla. Toto přesměrování zpracování může zachytnout i jiné prvky mimo rozsah živých událostí nebo streamů, ale ty by měly být omezené, protože před přímým přístupem musí splňovat plně kvalifikovaný název domény i shodu IP adres.

Důležité

Doporučujeme zvážit riziko odesílání většího provozu, který obchází síť VPN, než zvýšení výkonu živých událostí.

Pokud chcete implementovat výjimku vynuceného tunelu pro události a stream Teams, měli byste použít následující kroky:

1. Konfigurace externího překladu DNS

Klienti potřebují externí rekurzivní překlad DNS, aby bylo možné přeložit následující názvy hostitelů na IP adresy.

  • *.azureedge.net
  • *.media.azure.net
  • *.bmc.cdn.office.net
  • *.ml.cdn.office.net

*.azureedge.net se používá pro události streamu (Konfigurace kodérů pro živé streamování v Microsoft Stream – Microsoft Stream | Microsoft Docs).

*.media.azure.net a *.bmc.cdn.office.net se používají pro živé události vytvořené v Teams (události rychlého startu a RTMP-In podporované události) naplánované z klienta Teams.

*.media.azure.net, *.bmc.cdn.office.net a *.ml.cdn.office.net se používají pro události na radnici Teams.

Některé z těchto koncových bodů se sdílí s jinými prvky mimo události Streamu nebo Teams. Nedoporučujeme používat tyto plně kvalifikované názvy domén ke konfiguraci přesměrování zpracování VPN, i když je to technicky možné ve vašem řešení VPN (například pokud funguje na plně kvalifikovaném názvu domény místo IP adresy).

Plně kvalifikované názvy domén se v konfiguraci sítě VPN nevyžadují, ale slouží výhradně k použití v souborech PAC v kombinaci s IP adresami pro přímé odesílání relevantního provozu.

2. Implementace změn souboru PAC (v případě potřeby)

V organizacích, které využívají soubor PAC ke směrování provozu přes proxy server v síti VPN, se toho obvykle dosahuje pomocí plně kvalifikovaných názvů domén. U streamu/ živých událostí / radnice však zadané názvy hostitelů obsahují zástupné znaky, například *.azureedge.net, které zahrnují i další prvky, pro které není možné poskytnout úplné výpisy IP adres. Pokud se tedy požadavek odešle přímo na základě shody zástupných znaků DNS, provoz do těchto koncových bodů se zablokuje, protože neexistuje žádná trasa přes jeho přímou cestu v kroku 3 dále v tomto článku.

K vyřešení tohoto problému můžeme poskytnout následující IP adresy a použít je v kombinaci s názvy hostitelů v ukázkovém souboru PAC, jak je popsáno v kroku 1. Soubor PAC zkontroluje, jestli adresa URL odpovídá adresám použitým pro streamy, živé události nebo radnici, a pokud ano, zkontroluje také, jestli IP adresa vrácená z vyhledávání DNS odpovídá ip adrese zadané pro službu. Pokud se obě shodují, provoz se směruje přímo. Pokud se některý z prvků (plně kvalifikovaný název domény nebo IP adresa) neshoduje, provoz se odešle na proxy server. V důsledku toho konfigurace zajistí, že vše, co se přeloží na IP adresu mimo rozsah IP adresy i definované obory názvů, bude procházet proxy serverem přes síť VPN jako obvykle.

Shromažďování aktuálních seznamů koncových bodů CDN

Události Teams používají více poskytovatelů CDN ke streamování zákazníkům, aby poskytovaly co nejlepší pokrytí, kvalitu a odolnost. V současné době se používá Azure CDN od Microsoftu i verizonu. Časem se to může změnit v důsledku situace, jako je regionální dostupnost. Tento článek je zdrojem, který vám umožní udržovat aktuální informace o rozsahech IP adres.

V případě Azure CDN od Microsoftu si můžete stáhnout seznam z části Stažení rozsahů IP adres a značek služeb Azure – veřejný cloud z oficiálního webu Microsoft Download Center – konkrétně se budete muset podívat na značku služby AzureFrontdoor.Frontend ve formátu JSON. addressPrefixes zobrazí podsítě IPv4/IPv6. V průběhu času se IP adresy můžou měnit, ale seznam značek služeb se před použitím vždy aktualizuje.

Pro Azure CDN od Verizonu (Edgecast) najdete úplný seznam pomocí možnosti Hraniční uzly – Seznam (vyberte Vyzkoušet ) – budete muset vyhledat konkrétně část Premium_Verizon . Všimněte si, že toto rozhraní API zobrazuje všechny IP adresy vysílání Edge (origin a Anycast). V současné době neexistuje mechanismus, který by rozhraní API rozlišoval mezi origin a Anycast.

Pokud to chcete implementovat v souboru PAC, můžete použít následující příklad, který odesílá přenosy Microsoft 365 Optimize přímo (což je doporučený osvědčený postup) prostřednictvím plně kvalifikovaného názvu domény a kritické přenosy datových proudů a živých událostí přímo prostřednictvím kombinace plně kvalifikovaného názvu domény a vrácené IP adresy. Zástupný název Contoso by bylo potřeba upravit na název vašeho konkrétního tenanta, kde contoso pochází z contoso.onmicrosoft.com

Příklad souboru PAC

Tady je příklad, jak vygenerovat soubory PAC:

  1. Uložte níže uvedený skript na místní pevný disk jako Get-TLEPacFile.ps1.

  2. Přejděte na adresu URL verizonu a stáhněte si výsledný kód JSON (zkopírujte ho do souboru, jako je cdnedgenodes.json).

  3. Vložte soubor do stejné složky jako skript.

  4. V okně PowerShellu spusťte následující příkaz. Pokud chcete adresy URL SPO, změňte název tenanta na něco jiného. Toto je typ 2, takže Optimalizovat a Povolit (typ 1 je jenom Optimalizovat).

    .\Get-TLEPacFile.ps1 -Instance Worldwide -Type 2 -TenantName <contoso> -CdnEdgeNodesFilePath .\cdnedgenodes.json -FilePath TLE.pac
    
  5. Soubor TLE.pac bude obsahovat všechny obory názvů a IP adresy (IPv4/IPv6).

Get-TLEPacFile.ps1
# Copyright (c) Microsoft Corporation. All rights reserved.
# Licensed under the MIT License.

<#PSScriptInfo

.VERSION 1.0.5

.AUTHOR Microsoft Corporation

.GUID 7f692977-e76c-4582-97d5-9989850a2529

.COMPANYNAME Microsoft

.COPYRIGHT
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the MIT License.

.TAGS PAC Microsoft Microsoft365 365

.LICENSEURI

.PROJECTURI http://aka.ms/ipurlws

.ICONURI

.EXTERNALMODULEDEPENDENCIES

.REQUIREDSCRIPTS

.EXTERNALSCRIPTDEPENDENCIES

.RELEASENOTES

#>

<#

.SYNOPSIS

Create a PAC file for Microsoft 365 prioritized connectivity

.DESCRIPTION

This script will access updated information to create a PAC file to prioritize Microsoft 365 Urls for
better access to the service. This script will allow you to create different types of files depending
on how traffic needs to be prioritized.

.PARAMETER Instance

The service instance inside Microsoft 365.

.PARAMETER ClientRequestId

The client request id to connect to the web service to query up to date Urls.

.PARAMETER DirectProxySettings

The direct proxy settings for priority traffic.

.PARAMETER DefaultProxySettings

The default proxy settings for non priority traffic.

.PARAMETER Type

The type of prioritization to give. Valid values are 1 and 2, which are 2 different modes of operation.
Type 1 will send Optimize traffic to the direct route. Type 2 will send Optimize and Allow traffic to
the direct route.

.PARAMETER Lowercase

Flag this to include lowercase transformation into the PAC file for the host name matching.

.PARAMETER TenantName

The tenant name to replace wildcard Urls in the webservice.

.PARAMETER ServiceAreas

The service areas to filter endpoints by in the webservice.

.PARAMETER FilePath

The file to print the content to.

.EXAMPLE

Get-TLEPacFile.ps1 -ClientRequestId b10c5ed1-bad1-445f-b386-b919946339a7 -DefaultProxySettings "PROXY 4.4.4.4:70" -FilePath type1.pac

.EXAMPLE

Get-TLEPacFile.ps1 -ClientRequestId b10c5ed1-bad1-445f-b386-b919946339a7 -Instance China -Type 2 -DefaultProxySettings "PROXY 4.4.4.4:70" -FilePath type2.pac

.EXAMPLE

Get-TLEPacFile.ps1 -ClientRequestId b10c5ed1-bad1-445f-b386-b919946339a7 -Instance WorldWide -Lowercase -TenantName tenantName -ServiceAreas Sharepoint

#>

#Requires -Version 2

[CmdletBinding(SupportsShouldProcess=$True)]
Param (
    [Parameter(Mandatory = $false)]
    [ValidateSet('Worldwide', 'Germany', 'China', 'USGovDoD', 'USGovGCCHigh')]
    [String] $Instance = "Worldwide",

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [guid] $ClientRequestId = [Guid]::NewGuid().Guid,

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [String] $DirectProxySettings = 'DIRECT',

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [String] $DefaultProxySettings = 'PROXY 10.10.10.10:8080',

    [Parameter(Mandatory = $false)]
    [ValidateRange(1, 2)]
    [int] $Type = 1,

    [Parameter(Mandatory = $false)]
    [switch] $Lowercase = $false,

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [string] $TenantName,

    [Parameter(Mandatory = $false)]
    [ValidateSet('Exchange', 'SharePoint', 'Common', 'Skype')]
    [string[]] $ServiceAreas,

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [string] $FilePath,

    [Parameter(Mandatory = $false)]
    [ValidateNotNullOrEmpty()]
    [string] $CdnEdgeNodesFilePath
)

##################################################################################################################
### Global constants
##################################################################################################################

$baseServiceUrl = "https://endpoints.office.com/endpoints/$Instance/?ClientRequestId={$ClientRequestId}"
$directProxyVarName = "direct"
$defaultProxyVarName = "proxyServer"
$bl = "`r`n"

##################################################################################################################
### Functions to create PAC files
##################################################################################################################

function Get-PacClauses
{
    param(
        [Parameter(Mandatory = $false)]
        [string[]] $Urls,

        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [String] $ReturnVarName
    )

    if (!$Urls)
    {
        return ""
    }

    $clauses =  (($Urls | ForEach-Object { "shExpMatch(host, `"$_`")" }) -Join "$bl        || ")

@"
    if($clauses)
    {
        return $ReturnVarName;
    }
"@
}

function Get-PacString
{
    param(
        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [array[]] $MapVarUrls
    )

@"
// This PAC file will provide proxy config to Microsoft 365 services
//  using data from the public web service for all endpoints
function FindProxyForURL(url, host)
{
    var $directProxyVarName = "$DirectProxySettings";
    var $defaultProxyVarName = "$DefaultProxySettings";

$( if ($Lowercase) { "    host = host.toLowerCase();" })

$( ($MapVarUrls | ForEach-Object { Get-PACClauses -ReturnVarName $_.Item1 -Urls $_.Item2 }) -Join "$bl$bl" )

$( if (!$ServiceAreas -or $ServiceAreas.Contains('Skype')) { Get-TLEPacConfiguration })

    return $defaultProxyVarName;
}
"@ -replace "($bl){3,}","$bl$bl" # Collapse more than one blank line in the PAC file so it looks better.
}

##################################################################################################################
### Functions to get and filter endpoints
##################################################################################################################

function Get-TLEPacConfiguration {
    param ()
    $PreBlock = @"
    // Don't Proxy Teams Live Events traffic

    if(shExpMatch(host, "*.azureedge.net")
    || shExpMatch(host, "*.bmc.cdn.office.net")
    || shExpMatch(host, "*.ml.cdn.office.net")
    || shExpMatch(host, "*.media.azure.net"))
    {
        var resolved_ip = dnsResolveEx(host);

"@
    $TLESb = New-Object 'System.Text.StringBuilder'
    $TLESb.Append($PreBlock) | Out-Null

    if (![string]::IsNullOrEmpty($CdnEdgeNodesFilePath) -and (Test-Path -Path $CdnEdgeNodesFilePath)) {
        $CdnData = Get-Content -Path $CdnEdgeNodesFilePath -Raw -ErrorAction SilentlyContinue | ConvertFrom-Json | Select-Object -ExpandProperty value | 
            Where-Object { $_.name -eq 'Premium_Verizon'} | Select-Object -First 1 -ExpandProperty properties | 
            Select-Object -ExpandProperty ipAddressGroups
        $CdnData | Select-Object -ExpandProperty ipv4Addresses | ForEach-Object {
            if ($TLESb.Length -eq $PreBlock.Length) {
                $TLESb.Append("        if(") | Out-Null
            }
            else {
                $TLESb.AppendLine() | Out-Null
                $TLESb.Append("        || ") | Out-Null
            }
            $TLESb.Append("isInNetEx(resolved_ip, `"$($_.BaseIpAddress)/$($_.prefixLength)`")") | Out-Null
        }
        $CdnData | Select-Object -ExpandProperty ipv6Addresses | ForEach-Object {
            if ($TLESb.Length -eq $PreBlock.Length) {
                $TLESb.Append("        if(") | Out-Null
            }
            else {
                $TLESb.AppendLine() | Out-Null
                $TLESb.Append("        || ") | Out-Null
            }
            $TLESb.Append("isInNetEx(resolved_ip, `"$($_.BaseIpAddress)/$($_.prefixLength)`")") | Out-Null
        }
    }
    $AzureIPsUrl = Invoke-WebRequest -Uri "https://www.microsoft.com/en-us/download/confirmation.aspx?id=56519" -UseBasicParsing -ErrorAction SilentlyContinue  | 
            Select-Object -ExpandProperty Links | Select-Object -ExpandProperty href | 
            Where-Object { $_.EndsWith('.json') -and $_ -match 'ServiceTags' } | Select-Object -First 1
    if ($AzureIPsUrl) {
        Invoke-RestMethod -Uri $AzureIPsUrl -ErrorAction SilentlyContinue | Select-Object -ExpandProperty values | 
            Where-Object { $_.name -eq 'AzureFrontDoor.Frontend' } | Select-Object -First 1 -ExpandProperty properties |
            Select-Object -ExpandProperty addressPrefixes | ForEach-Object {
                if ($TLESb.Length -eq $PreBlock.Length) {
                    $TLESb.Append("        if(") | Out-Null
                }
                else {
                    $TLESb.AppendLine() | Out-Null
                    $TLESb.Append("        || ") | Out-Null
                }
                $TLESb.Append("isInNetEx(resolved_ip, `"$_`")") | Out-Null
            }
    }
    if ($TLESb.Length -gt $PreBlock.Length) {
        $TLESb.AppendLine(")") | Out-Null
        $TLESb.AppendLine("        {") | Out-Null
        $TLESb.AppendLine("            return $directProxyVarName;") | Out-Null
        $TLESb.AppendLine("        }") | Out-Null
    }
    else {
        $TLESb.AppendLine("        // no addresses found for service via script") | Out-Null
    }
    $TLESb.AppendLine("    }") | Out-Null
    return $TLESb.ToString()
}

function Get-Regex
{
    param(
        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [string] $Fqdn
    )

    return "^" + $Fqdn.Replace(".", "\.").Replace("*", ".*").Replace("?", ".?") + "$"
}

function Match-RegexList
{
    param(
        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [string] $ToMatch,

        [Parameter(Mandatory = $false)]
        [string[]] $MatchList
    )

    if (!$MatchList)
    {
        return $false
    }
    foreach ($regex in $MatchList)
    {
        if ($regex -ne $ToMatch -and $ToMatch -match (Get-Regex $regex))
        {
            return $true
        }
    }
    return $false
}

function Get-Endpoints
{
    $url = $baseServiceUrl
    if ($TenantName)
    {
        $url += "&TenantName=$TenantName"
    }
    if ($ServiceAreas)
    {
        $url += "&ServiceAreas=" + ($ServiceAreas -Join ",")
    }
    return Invoke-RestMethod -Uri $url
}

function Get-Urls
{
    param(
        [Parameter(Mandatory = $false)]
        [psobject[]] $Endpoints
    )

    if ($Endpoints)
    {
        return $Endpoints | Where-Object { $_.urls } | ForEach-Object { $_.urls } | Sort-Object -Unique
    }
    return @()
}

function Get-UrlVarTuple
{
    param(
        [Parameter(Mandatory = $true)]
        [ValidateNotNullOrEmpty()]
        [string] $VarName,

        [Parameter(Mandatory = $false)]
        [string[]] $Urls
    )
    return New-Object 'Tuple[string,string[]]'($VarName, $Urls)
}

function Get-MapVarUrls
{
    Write-Verbose "Retrieving all endpoints for instance $Instance from web service."
    $Endpoints = Get-Endpoints

    if ($Type -eq 1)
    {
        $directUrls = Get-Urls ($Endpoints | Where-Object { $_.category -eq "Optimize" })
        $nonDirectPriorityUrls = Get-Urls ($Endpoints | Where-Object { $_.category -ne "Optimize" }) | Where-Object { Match-RegexList $_ $directUrls }
        return @(
            Get-UrlVarTuple -VarName $defaultProxyVarName -Urls $nonDirectPriorityUrls
            Get-UrlVarTuple -VarName $directProxyVarName -Urls $directUrls
        )
    }
    elseif ($Type -eq 2)
    {
        $directUrls = Get-Urls ($Endpoints | Where-Object { $_.category -in @("Optimize", "Allow")})
        $nonDirectPriorityUrls = Get-Urls ($Endpoints | Where-Object { $_.category -notin @("Optimize", "Allow") }) | Where-Object { Match-RegexList $_ $directUrls }
        return @(
            Get-UrlVarTuple -VarName $defaultProxyVarName -Urls $nonDirectPriorityUrls
            Get-UrlVarTuple -VarName $directProxyVarName -Urls $directUrls
        )
    }
}

##################################################################################################################
### Main script
##################################################################################################################

$content = Get-PacString (Get-MapVarUrls)

if ($FilePath)
{
    $content | Out-File -FilePath $FilePath -Encoding ascii
}
else
{
    $content
}

Skript automaticky parsuje seznam Azure na základě adresy URL a klíčů ke stažení z webu AzureFrontDoor.Frontend, takže není nutné je získávat ručně.

Opět nedoporučujeme snižování zátěže VPN pouze pomocí plně kvalifikovaných názvů domén. Využití plně kvalifikovaných názvů domén a IP adres ve funkci pomáhá omezit použití tohoto přesměrování zpracování na omezenou sadu koncových bodů, včetně živých událostí/streamů. Způsob, jakým je funkce strukturovaná, způsobí, že se pro plně kvalifikovaný název domény provede vyhledávání DNS, které odpovídá názvům uvedeným přímo klientem, to znamená, že překlad DNS zbývajících oborů názvů zůstane nezměněný.

Pokud chcete omezit riziko přesměrování zátěže koncových bodů, které nesouvisí s událostmi Teams a streamem, můžete z konfigurace odebrat doménu *.azureedge.net , kde je většina tohoto rizika, protože se jedná o sdílenou doménu používanou pro všechny zákazníky Azure CDN. Nevýhodou je, že všechny události využívající externí kodér využívající Stream nebudou optimalizované, ale události vytvořené nebo uspořádané v teams budou.

3. Nakonfigurujte směrování na síti VPN, abyste umožnili přímý výchozí přenos dat.

Posledním krokem je přidání přímé trasy pro IP adresy událostí Teams popsané v tématu Shromažďování aktuálních seznamů koncových bodů CDN do konfigurace SÍTĚ VPN, aby se zajistilo, že se provoz neodesílá přes vynucený tunel do sítě VPN. Podrobné informace o tom, jak to provést u koncových bodů Optimalizace Microsoftu 365, najdete v části Implementace rozděleného tunelového propojení VPN v tématu Implementace rozděleného tunelového propojení VPN pro Microsoft 365. Proces je úplně stejný pro IP adresy událostí Streamu nebo Teams uvedené v tomto dokumentu.

Mějte na paměti, že ke konfiguraci sítě VPN by se měly používat pouze IP adresy (ne plně kvalifikované názvy domén) ze shromažďování aktuálních seznamů koncových bodů CDN .

Časté otázky

Bude se tím veškerý provoz odesílat přímo do služby?

Ne, tím se odešle přenos streamování citlivých na latenci pro událost Teams nebo stream videa přímo. Všechny ostatní přenosy budou dál používat tunel VPN, pokud se nepřeloží na publikované IP adresy.

Musím používat adresy IPv6?

Ne, připojení může být IPv4 jenom v případě potřeby.

Proč se tyto IP adresy nepublikují ve službě Microsoft 365 URL/IP?

Microsoft má přísné kontroly týkající se formátu a typu informací, které jsou ve službě, aby zajistily, že zákazníci můžou informace spolehlivě používat k implementaci zabezpečeného a optimálního směrování na základě kategorie koncových bodů.

Kategorie Výchozí koncový bod neobsahuje žádné informace o IP adrese z mnoha důvodů (výchozí koncové body můžou být mimo kontrolu Microsoftu, můžou se příliš často měnit nebo se můžou nacházet v blocích sdílených s jinými prvky). Z tohoto důvodu jsou výchozí koncové body navržené tak, aby se prostřednictvím plně kvalifikovaného názvu domény odesílaly na kontrolující proxy server, jako je běžný webový provoz.

V tomto případě jsou výše uvedené koncové body sítě CDN, které můžou být používány jinými prvky, než jsou živé události nebo Stream, a proto odeslání přímého provozu bude také znamenat, že cokoli jiného, co řeší tyto IP adresy, bude také odesláno přímo z klienta. Vzhledem k jedinečné povaze současné globální krize a ke splnění krátkodobých potřeb našich zákazníků poskytl Microsoft výše uvedené informace, které mohou zákazníci používat podle svých potřeb.

Microsoft pracuje na překonfigurování koncových bodů událostí Teams, aby je bylo možné v budoucnu zahrnout do kategorií Povolit nebo optimalizovat koncové body.

Musím povolit přístup jenom k těmto IP adresám?

Ne, přístup ke všem požadovaným označeným koncovým bodům ve službě URL/IP je pro provoz služby nezbytný. Kromě toho se vyžaduje libovolný volitelný koncový bod označený pro Stream (ID 41-45).

K jakým scénářům se bude toto doporučení vztahovat?

  1. Živé události vytvořené v aplikaci Teams
  2. Zobrazení hostovaného obsahu streamu
  3. Události vytvořené externím zařízením (kodérem)
  4. Teams Radnice

Týká se tato rada provozu prezentujícího?

Není to tak; výše uvedené rady jsou určeny výhradně pro ty, kteří službu využívají. Při prezentaci z aplikace Teams uvidíte přenosy prezentujícího do koncových bodů UDP s označením Optimalizace uvedených na řádku 11 služby URL/IP s podrobnými pokyny ke snižování zátěže VPN v části Implementace rozděleného tunelového propojení VPNv tématu Implementace rozděleného tunelového propojení VPN pro Microsoft 365.

Hrozí tato konfigurace jinému provozu než na radnici, živých událostech & streamu, který se odesílá přímo?

Ano, kvůli sdíleným plně kvalifikovaným názvům domén používaným pro některé prvky služby je to nevyhnutelné. Tento provoz se obvykle odesílá přes podnikový proxy server, který může provést kontrolu. Ve scénáři rozděleného tunelu VPN použití plně kvalifikovaných názvů domén i IP adres toto riziko vymezí na minimum, ale stále bude existovat. Zákazníci můžou odebrat doménu *.azureedge.net z konfigurace přesměrování zpracování a snížit toto riziko na úplné minimum, ale tím se odebere snížení zátěže živých událostí podporovaných službou Stream (události naplánované pro Teams, události kodéru Stream, události Viva Engage vytvořené v Teams, události kodéru Viva Engage naplánované ve službě Stream a naplánované události streamu nebo zobrazení na vyžádání ze služby Stream). Události naplánované a vytvořené v Teams (včetně radnice) nejsou ovlivněné.

Přehled: Dělené tunelové propojení VPN pro Microsoft 365

Implementace rozděleného tunelového propojení VPN pro Microsoft 365

Běžné scénáře rozděleného tunelového propojení VPN pro Microsoft 365

Zabezpečení přenosů médií v Teams pro dělené tunelování VPN

Optimalizace výkonu Microsoftu 365 pro uživatele v Číně

Principy síťového připojení Microsoftu 365

Vyhodnocování síťového připojení Microsoftu 365

Ladění sítě a výkonu Microsoftu 365

Alternativní způsoby, jak odborníci na zabezpečení a IT dosáhnout moderních kontrolních mechanismů zabezpečení v dnešních jedinečných scénářích práce na dálku (blog týmu Microsoft Security Team)

Zvýšení výkonu sítě VPN v Microsoftu: Povolení automatických připojení pomocí profilů Windows 10 VPN

Provoz na SÍTI VPN: Jak Microsoft udržuje své vzdálené pracovníky ve spojení

Globální síť Microsoftu