การจัดการจุดสิ้นสุดของ Office 365

การเชื่อมต่อเครือข่าย Office 365

8/3/2018 การเชื่อมต่อกับ Office 365 ประกอบด้วยการร้องขอเครือข่ายที่เชื่อถือได้จำนวนมากที่ทำงานได้ดีที่สุดเมื่อการร้องขอส่งออกมาด้วยเวลาแฝงต่ำจากตำแหน่งใกล้กับผู้ใช้ การเชื่อมต่อ Office 365 บางส่วนอาจได้รับประโยชน์จากการปรับการเชื่อมต่อให้เหมาะสมที่สุด

  1. ตรวจสอบให้แน่ใจว่ารายการที่อนุญาตไฟร์วอลล์จะอนุญาตการเชื่อมต่อไปยังจุดสิ้นสุด Office 365

  2. ใช้โครงสร้างพื้นฐานพร็อกซีของคุณเพื่ออนุญาตการเชื่อมต่ออินเทอร์เน็ตให้กับอักขระตัวแทนและปลายทางที่ยกเลิกการประกาศ

  3. รักษาการกำหนดค่าเครือข่ายเฉพาะเขตที่เหมาะสม

  4. ตรวจสอบให้แน่ใจว่าคุณได้รับการเชื่อมต่อที่ดีที่สุด

  5. อ่าน หลักการเชื่อมต่อเครือข่าย Office 365 เพื่อทำความเข้าใจหลักการเชื่อมต่อสำหรับการจัดการปริมาณการใช้งาน Office 365 อย่างปลอดภัยและใช้งานด้วยประสิทธิภาพสูงสุด

การเชื่อมต่อไปยัง Office 365 ผ่านไฟร์วอลล์และพร็อกซี

อัปเดตรายการอนุญาตขาออกของไฟร์วอลล์ของคุณ

คุณสามารถปรับเครือข่ายของคุณให้เหมาะสมโดยการส่งการร้องขอเครือข่าย Office 365 ที่เชื่อถือได้โดยตรงผ่านไฟร์วอลล์ของคุณ หลีกเลี่ยงการตรวจสอบหรือประมวลผลระดับแพคเก็ตเพิ่มเติม ซึ่งลดประสิทธิภาพการทำงานที่ช้าจากเวลาแฝง และลดความต้องการกำลังการผลิตในขอบเขตของคุณ วิธีที่ง่ายที่สุดในการเลือกการร้องขอเครือข่ายที่น่าเชื่อถือคือการใช้ไฟล์ PAC ที่สร้างไว้ล่วงหน้าของเราบนแท็บ พร็อกซี ที่ด้านบน

ถ้าไฟร์วอลล์ของคุณบล็อกการใช้งานขาออก คุณจะต้องการทำให้แน่ใจว่า IP และ FQDN ทั้งหมดที่แสดงรายการที่ จำเป็น ใน ไฟล์ XML นี้ จะอยู่ในรายการที่ได้รับอนุญาต ยอมรับว่าการบริการทั้งหมดจำเป็นต้องใช้บริการบางอย่างของบริษัทอื่น เราไม่มีที่อยู่ IP สำหรับบริการของบริษัทอื่นเหล่านี้ เช่น ผู้ให้บริการใบรับรอง เครือข่ายการนำส่งเนื้อหา ผู้ให้บริการ DNS และอื่นๆ สำหรับฟังก์ชันการทำงาน Office 365 แบบสมบูรณ์ คุณต้องสามารถเข้าถึงปลายทางทั้งหมดที่ร้องขอโดย Office 365 ได้โดยไม่คำนึงว่าเราเผยแพร่ข้อมูลเกี่ยวกับปลายทางมากน้อยเพียงใด

ปลายทางจำนวนมากจะไม่ประกาศที่อยู่ IP หรือแสดงรายการเป็นโดเมนของอักขระตัวแทนที่ไม่มีชื่อโดเมนที่มีคุณสมบัติเหมาะสมครบถ้วนที่เฉพาะเจาะจง เมื่อต้องการใช้ฟังก์ชันการทำงานนี้ คุณจะต้องสามารถแก้ไขคำขอเครือข่ายเหล่านี้ไปยัง IP ปัจจุบันที่รับคำขออยู่ และส่งคำขอ เครือข่ายผ่านทางอินเทอร์เน็ต

ทำกระบวนการของคุณให้เป็นอัตโนมัติโดยใช้ไฟร์วอลล์ที่วิเคราะห์ไฟล์ XML ในนามของคุณ และอัปเดตกฎของคุณโดยอัตโนมัติตามบริการหรือฟีเจอร์ที่คุณวางแผนเพื่อกำหนดเส้นทางผ่านไฟร์วอลล์ของคุณโดยตรง นอกจากนี้คุณยังสามารถใช้เครื่องมือ ช่วง Azure ที่สร้างขึ้นโดยชุมชน และแยกวิเคราะห์ XML ด้วยตัวเลือกการส่งออกสำหรับ Cisco XE Route หรือการกำหนดค่ารายการ ACL ข้อความธรรมดา หรือ CSV

คำอธิบายที่ยาวขึ้นของปลายทางเครือข่ายจะพร้อมใช้งานบน ไซต์อ้างอิง รวมถึงผ่าน บันทึกการเปลี่ยนแปลงที่ยึดตาม RSS เพื่อให้คุณสามารถสมัครใช้งานการเปลี่ยนแปลงได้

กำหนดเส้นทางขาออกด้วยไฟล์ PAC

ใช้ไฟล์ PAC หรือ WPAD เพื่อจัดการการร้องขอเครือข่ายที่เกี่ยวข้องกับ Office 365 แต่ไม่มีที่อยู่ IP โดยทั่วไปแล้ว การร้องขอเครือข่ายที่ถูกส่งผ่านพร็อกซีหรืออุปกรณ์เฉพาะเขตจะเกิดเวลาแฝงเพิ่มเติม เมื่อการรับรองความถูกต้องของพร็อกซีเจอปัญหาภาษีมูลค่ามากที่สุด บริการอื่น เช่น การค้นหาความนิยม และความพยายามในการตรวจสอบแพคเก็ตสามารถส่งผลเสียต่อประสบการณ์ของผู้ใช้ได้ นอกจากนี้ อุปกรณ์เครือข่ายเฉพาะเขตจำเป็นต้องมีความจุเพียงพอในการประมวลผลการร้องขอเครือข่ายทั้งหมด เราขอแนะนำให้หลีกเลี่ยงโครงสร้างพื้นฐานพร็อกซีหรือการตรวจสอบของคุณสำหรับการร้องขอเครือข่าย Office 365 โดยตรง

ใช้ไฟล์ PAC ของเราเป็นจุดเริ่มต้นในการกำหนดการรับส่งข้อมูลทางเครือข่ายที่จะส่งไปยังพร็อกซีและที่จะส่งไปยังไฟร์วอลล์ ถ้าคุณไม่คุ้นเคยกับไฟล์ PAC หรือ WPAD ให้อ่านโพสต์นี้เกี่ยวกับ การปรับใช้ไฟล์ PAC จากหนึ่งในที่ปรึกษา Office 365 ของเรา คุณต้องการที่จะตรวจสอบไฟล์เหล่านี้เป็นจุดเริ่มต้นและแก้ไขให้เหมาะสมกับสภาพแวดล้อมของคุณ

ไฟล์ PAC อัปเดตเมื่อ 5/4/2018

ตัวอย่างแรกคือการสาธิตวิธีการที่เราแนะนำในการจัดการจุดสิ้นสุดผ่านทางอินเทอร์เน็ตเท่านั้น โดยข้ามพร็อกซีสำหรับปลายทาง Office 365 ที่เผยแพร่ที่อยู่ IP และส่งคำร้องขอเครือข่ายที่มีอยู่ไปยังพร็อกซี

โค้ดส่วนย่อย:

// JavaScript source code

//April 2018 - Updates go live 1st May2018
//This PAC file contains all FQDNs needed for all services and splits the traffic between those which Microsoft can provide IPs for (so can be sent through a managed firewall with conditional access if desired) and those which IPs cannot be provided for, so need to go to an unrestricted proxy or egress. 
//Due to the use of wildcards, some extra logic is provided to send traffic to the proxy before a 'direct' wildcard is hit.
//Includes Core ProPlus URLs but not Office Mobile/IPAD/IOS/ANDROID fqdns from https://support.office.com/en-gb/article/Network-requests-in-Office-365-ProPlus-eb73fcd1-ca88-4d02-a74b-2dd3a9f3364d
//Every Effort is made to ensure 100% accuracy but this PAC should be used as an example and cross-checked with your needs and the Office 365 URL & IP page
//Intended only for Worldwide Office 365 instances, which the vast majority of customers will be using

function FindProxyForURL(url, host)
{
    // Define proxy server
    var proxyserver = "PROXY 10.10.10.10:8080";
    var proxyserver2 = "PROXY 10.10.10.11:8080";
    // Make host lowercase
    var lhost = host.toLowerCase();
    host = lhost;

    //Catch explicit FQDNs which need the proxy but are covered under wildcarded FQDNs which have IPs. This has to be done first before the wildcard is hit

    if ((shExpMatch(host, "quicktips.skypeforbusiness.com"))    
        || (shExpMatch(host, "*.um.outlook.com"))
        || (shExpMatch(host, "r3.res.office365.com"))
        || (shExpMatch(host, "r3.res.outlook.com"))
        || (shExpMatch(host, "r4.res.office365.com"))
        || (shExpMatch(host, "xsi.outlook.com"))
        || (shExpMatch(host, "r1.res.office365.com")))


    {
        return proxyserver;
    }
        //Send FQDNs which Microsoft provide IPs for direct, so they can be sent via a firewall

    else if ((isPlainHostName(host))
    || (shExpMatch(host, "*.api.skype.com"))
    || (shExpMatch(host, "*.aria.microsoft.com"))
    || (shExpMatch(host, "*.asm.skype.com"))
    || (shExpMatch(host, "*.broadcast.skype.com"))
    || (shExpMatch(host, "*.broker.skype.com"))
    || (shExpMatch(host, "*.cc.skype.com"))
    || (shExpMatch(host, "*.config.skype.com"))
    || (shExpMatch(host, "*.conv.skype.com"))
    || (shExpMatch(host, "*.dc.trouter.io"))
    || (shExpMatch(host, "*.lync.com"))
    || (shExpMatch(host, "*.manage.office.com"))
    || (shExpMatch(host, "*.msg.skype.com"))
    || (shExpMatch(host, "*.office365.com"))
    || (shExpMatch(host, "*.onenote.com"))
    || (shExpMatch(host, "*.outlook.com"))
    || (shExpMatch(host, "*.outlook.office.com"))
    || (shExpMatch(host, "*.pipe.aria.microsoft.com"))
    || (shExpMatch(host, "*.pipe.skype.com"))
    || (shExpMatch(host, "*.portal.cloudappsecurity.com"))
    || (shExpMatch(host, "*.protection.office.com"))
    || (shExpMatch(host, "*.sharepoint.com"))
    || (shExpMatch(host, "*.skypeforbusiness.com"))
    || (shExpMatch(host, "*.svc.ms"))
    || (shExpMatch(host, "*.teams.microsoft.com"))
    || (shExpMatch(host, "*.teams.skype.com"))
    || (shExpMatch(host, "*.yammer.com"))
    || (shExpMatch(host, "*.yammerusercontent.com"))
    || (shExpMatch(host, "*broadcast.officeapps.live.com"))
    || (shExpMatch(host, "*excel.officeapps.live.com"))
    || (shExpMatch(host, "*onenote.officeapps.live.com"))
    || (shExpMatch(host, "*powerpoint.officeapps.live.com"))
    || (shExpMatch(host, "*view.officeapps.live.com"))
    || (shExpMatch(host, "*visio.officeapps.live.com"))
    || (shExpMatch(host, "*word-edit.officeapps.live.com"))
    || (shExpMatch(host, "*word-view.officeapps.live.com"))    
    || (shExpMatch(host, "account.office.net"))
    || (shExpMatch(host, "adminwebservice.microsoftonline.com"))
    || (shExpMatch(host, "agent.office.net"))
    || (shExpMatch(host, "api.login.microsoftonline.com"))
    || (shExpMatch(host, "api.passwordreset.microsoftonline.com"))
    || (shExpMatch(host, "apc.delve.office.com"))
    || (shExpMatch(host, "aus.delve.office.com"))
    || (shExpMatch(host, "becws.microsoftonline.com"))
    || (shExpMatch(host, "broadcast.skype.com "))    
    || (shExpMatch(host, "browser.pipe.aria.microsoft.com"))  
    || (shExpMatch(host, "can.delve.office.com"))
    || (shExpMatch(host, "ccs.login.microsoftonline.com"))
    || (shExpMatch(host, "ccs-sdf.login.microsoftonline.com"))
    || (shExpMatch(host, "clientconfig.microsoftonline-p.net"))
    || (shExpMatch(host, "clientlog.portal.office.com"))
    || (shExpMatch(host, "companymanager.microsoftonline.com"))
    || (shExpMatch(host, "config.edge.skype.com"))
    || (shExpMatch(host, "cus-000.tasks.osi.office.net"))
    || (shExpMatch(host, "delve.office.com"))
    || (shExpMatch(host, "device.login.microsoftonline.com"))    
    || (shExpMatch(host, "ea-000.tasks.osi.office.net"))
    || (shExpMatch(host, "eur.delve.office.com"))
    || (shExpMatch(host, "eus-zzz.tasks.osi.office.net"))
    || (shExpMatch(host, "gbr.delve.office.com"))    
    || (shExpMatch(host, "hip.microsoftonline-p.net"))
    || (shExpMatch(host, "hipservice.microsoftonline.com"))
    || (shExpMatch(host, "home.office.com"))
    || (shExpMatch(host, "ind.delve.office.com"))
    || (shExpMatch(host, "jpn.delve.office.com"))
    || (shExpMatch(host, "kor.delve.office.com"))
    || (shExpMatch(host, "lam.delve.office.com"))
    || (shExpMatch(host, "login.microsoft.com"))
    || (shExpMatch(host, "login.microsoftonline.com"))
    || (shExpMatch(host, "login.microsoftonline-p.com"))
    || (shExpMatch(host, "login.windows.net"))
    || (shExpMatch(host, "logincert.microsoftonline.com"))
    || (shExpMatch(host, "loginex.microsoftonline.com"))
    || (shExpMatch(host, "login-us.microsoftonline.com"))     
    || (shExpMatch(host, "manage.office.com"))
    || (shExpMatch(host, "mobile.pipe.aria.microsoft.com"))
    || (shExpMatch(host, "nam.delve.office.com"))
    || (shExpMatch(host, "neu-000.tasks.osi.office.net"))
    || (shExpMatch(host, "nexus.microsoftonline-p.com"))
    || (shExpMatch(host, "nexus.officeapps.live.com"))
    || (shExpMatch(host, "nexusrules.officeapps.live.com"))
    || (shExpMatch(host, "office.live.com"))
    || (shExpMatch(host, "officeapps.live.com"))
    || (shExpMatch(host, "passwordreset.microsoftonline.com"))
    || (shExpMatch(host, "pipe.skype.com"))
    || (shExpMatch(host, "portal.microsoftonline.com"))
    || (shExpMatch(host, "portal.office.com"))
    || (shExpMatch(host, "prod.registrar.skype.com"))
    || (shExpMatch(host, "prod.tpc.skype.com"))
    || (shExpMatch(host, "protection.office.com"))
    || (shExpMatch(host, "provisioningapi.microsoftonline.com"))
    || (shExpMatch(host, "s-0001.s-msedge.net"))
    || (shExpMatch(host, "s-0004.s-msedge.net"))
    || (shExpMatch(host, "scsinstrument-ss-us.trafficmanager.net"))   
    || (shExpMatch(host, "scsquery-ss-asia.trafficmanager.net")) 
    || (shExpMatch(host, "scsquery-ss-eu.trafficmanager.net")) 
    || (shExpMatch(host, "scsquery-ss-us.trafficmanager.net"))
    || (shExpMatch(host, "sea-000.tasks.osi.office.net"))    
    || (shExpMatch(host, "stamp2.login.microsoftonline.com"))
    || (shExpMatch(host, "suite.office.net"))    
    || (shExpMatch(host, "tasks.office.com"))
    || (shExpMatch(host, "teams.microsoft.com"))
    || (shExpMatch(host, "testconnectivity.microsoft.com"))
    || (shExpMatch(host, "webshell.suite.office.com"))
    || (shExpMatch(host, "weu-000.tasks.osi.office.net"))
    || (shExpMatch(host, "wus-000.tasks.osi.office.net"))
    || (shExpMatch(host, "www.office.com")))

      
    {
        return "DIRECT";
    }
    else

        // Send all unknown IP traffic to Proxy for unrestricted access. This section is not necessary if you have a catchall for all other traffic to go to an unfiltered proxy. 
        //However the fqdns required, but for which we dont have IPs for, are listed here incase you need an explicit list.

   if          ((shExpMatch(host, "*.aadrm.com"))
        || (shExpMatch(host, "*.adhybridhealth.azure.com")) 
        || (shExpMatch(host, "*.adl.windows.com"))   
        || (shExpMatch(host, "*.api.microsoftstream.com"))           
        || (shExpMatch(host, "*.api.skype.com"))
        || (shExpMatch(host, "*.assets-yammer.com"))   
        || (shExpMatch(host, "*.azureedge.net"))            
        || (shExpMatch(host, "*.azurerms.com"))
        || (shExpMatch(host, "*.cloudapp.net"))
        || (shExpMatch(host, "*.entrust.net")) 
        || (shExpMatch(host, "*.geotrust.com"))   
        || (shExpMatch(host, "*.helpshift.com"))   
        || (shExpMatch(host, "*.hockeyapp.net"))    
        || (shExpMatch(host, "*.localytics.com"))    
        || (shExpMatch(host, "*.log.optimizely.com"))    
        || (shExpMatch(host, "*.microsoft.com"))
        || (shExpMatch(host, "*.microsoftonline.com"))
        || (shExpMatch(host, "*.microsoftonline-p.com"))
        || (shExpMatch(host, "*.microsoftonline-p.net"))
        || (shExpMatch(host, "*.msecnd.net"))
        || (shExpMatch(host, "*.msedge.net"))      
        || (shExpMatch(host, "*.msocdn.com")) 
        || (shExpMatch(host, "*.mstea.ms"))    
        || (shExpMatch(host, "*.notification.api.microsoftstream.com")) 
        || (shExpMatch(host, "*.o365weve.com"))     
        || (shExpMatch(host, "*.office.com"))   
        || (shExpMatch(host, "*.office.net"))
        || (shExpMatch(host, "*.omniroot.com"))
        || (shExpMatch(host, "*.onmicrosoft.com"))
        || (shExpMatch(host, "*.phonefactor.net"))
        || (shExpMatch(host, "*.public-trust.com"))
        || (shExpMatch(host, "*.search.production.apac.trafficmanager.net"))
        || (shExpMatch(host, "*.search.production.emea.trafficmanager.net"))
        || (shExpMatch(host, "*.search.production.us.trafficmanager.net"))
        || (shExpMatch(host, "*.secure.skypeassets.com"))  
        || (shExpMatch(host, "*.sfbassets.com"))
        || (shExpMatch(host, "*.sharepointonline.com"))
        || (shExpMatch(host, "*.sway.com"))
        || (shExpMatch(host, "*.symcb.com"))
        || (shExpMatch(host, "*.tenor.com"))  
        || (shExpMatch(host, "*.symcd.com"))     
        || (shExpMatch(host, "*.users.storage.live.com"))
        || (shExpMatch(host, "*.verisign.com"))
        || (shExpMatch(host, "*.verisign.net"))
        || (shExpMatch(host, "*.windows.net"))
        || (shExpMatch(host, "account.activedirectory.windowsazure.com"))
        || (shExpMatch(host, "ad.atdmt.com"))
        || (shExpMatch(host, "admin.onedrive.com"))
        || (shExpMatch(host, "ajax.aspnetcdn.com"))
        || (shExpMatch(host, "aka.ms"))
        || (shExpMatch(host, "amp.azure.net"))
        || (shExpMatch(host, "api.microsoftstream.com"))
        || (shExpMatch(host, "apis.live.net"))  
        || (shExpMatch(host, "apps.identrust.com"))  
        || (shExpMatch(host, "assets.onestore.ms"))
        || (shExpMatch(host, "auth.gfx.ms"))
        || (shExpMatch(host, "cacerts.digicert.com"))        
        || (shExpMatch(host, "cdn.odc.officeapps.live.com"))  
        || (shExpMatch(host, "cdn.onenote.net"))
        || (shExpMatch(host, "cdn.optimizely.com")) 
        || (shExpMatch(host, "cert.int-x3.letsencrypt.org"))
        || (shExpMatch(host, "client.hip.live.com"))
        || (shExpMatch(host, "connect.facebook.net"))        
        || (shExpMatch(host, "crl.globalsign.com"))
        || (shExpMatch(host, "crl.globalsign.net"))
        || (shExpMatch(host, "crl.identrust.com"))    
        || (shExpMatch(host, "crl3.digicert.com"))  
        || (shExpMatch(host, "crl4.digicert.com"))
        || (shExpMatch(host, "cus-odc.officeapps.live.com"))              
        || (shExpMatch(host, "cus-roaming.officeapps.live.com"))
        || (shExpMatch(host, "dc.services.visualstudio.com"))
        || (shExpMatch(host, "domains.live.com"))
        || (shExpMatch(host, "ea-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "ea-roaming.officeapps.live.com"))          
        || (shExpMatch(host, "ecn.dev.virtualearth.net "))   
        || (shExpMatch(host, "eus2-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "eus2-roaming.officeapps.live.com"))             
        || (shExpMatch(host, "eus-odc.officeapps.live.com"))         
        || (shExpMatch(host, "eus-www.sway-cdn.com"))
        || (shExpMatch(host, "eus-www.sway-extensions.com"))        
        || (shExpMatch(host, "feedback.skype.com"))
        || (shExpMatch(host, "firstpartyapps.oaspapps.com"))
        || (shExpMatch(host, "g.live.com"))
        || (shExpMatch(host, "groupsapi2-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi3-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi4-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi-prod.outlookgroups.ms"))   
        || (shExpMatch(host, "isrg.trustid.ocsp.identrust.com"))   
        || (shExpMatch(host, "latest-swx.cdn.skype.com"))
        || (shExpMatch(host, "liverdcxstorage.blob.core.windowsazure.com"))
        || (shExpMatch(host, "management.azure.com"))        
        || (shExpMatch(host, "mem.gfx.ms"))
        || (shExpMatch(host, "mrodevicemgr.officeapps.live.com"))      
        || (shExpMatch(host, "ncus-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "ncus-roaming.officeapps.live.com"))                
        || (shExpMatch(host, "neu-000.ocws.officeapps.live.com")) 
        || (shExpMatch(host, "neu-odc.officeapps.live.com"))         
        || (shExpMatch(host, "neu-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "nexus.officeapps.live.com"))
        || (shExpMatch(host, "nexusrules.officeapps.live.com"))
        || (shExpMatch(host, "nps.onyx.azure.net"))
        || (shExpMatch(host, "ocsa.officeapps.live.com"))
        || (shExpMatch(host, "ocsp.digicert.com"))
        || (shExpMatch(host, "ocspx.digicert.com"))
        || (shExpMatch(host, "ocsp.globalsign.com"))
        || (shExpMatch(host, "ocsp.int-x3.letsencrypt.org"))
        || (shExpMatch(host, "ocsp.msocsp.com"))       
        || (shExpMatch(host, "ocsp2.globalsign.com"))
        || (shExpMatch(host, "ocsredir.officeapps.live.com"))
        || (shExpMatch(host, "ocws.officeapps.live.com"))
        || (shExpMatch(host, "odc.officeapps.live.com"))  
        || (shExpMatch(host, "officecdn.microsoft.com.edgekey.net"))            
        || (shExpMatch(host, "officecdn.microsoft.com.edgesuite.net"))              
        || (shExpMatch(host, "ols.officeapps.live.com"))  
        || (shExpMatch(host, "oneclient.sfx.ms"))
        || (shExpMatch(host, "outlook.uservoice.com"))
        || (shExpMatch(host, "platform.linkedin.com"))
        || (shExpMatch(host, "policykeyservice.dc.ad.msft.net"))
        || (shExpMatch(host, "prod.firstpartyapps.oaspapps.com.akadns.net")) 
        || (shExpMatch(host, "r1.res.office365.com"))
        || (shExpMatch(host, "r3.res.office365.com"))
        || (shExpMatch(host, "r4.res.office365.com"))
        || (shExpMatch(host, "s.ytimg.com"))
        || (shExpMatch(host, "scus-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "scus-odc.officeapps.live.com"))         
        || (shExpMatch(host, "scus-roaming.officeapps.live.com"))                 
        || (shExpMatch(host, "sea-odc.officeapps.live.com"))         
        || (shExpMatch(host, "sea-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "secure.globalsign.com"))
        || (shExpMatch(host, "site-cdn.onenote.net"))
        || (shExpMatch(host, "skydrive.wns.windows.com"))
        || (shExpMatch(host, "skypegraph.skype.com"))  
        || (shExpMatch(host, "skypemaprdsitus.trafficmanager.net"))   
        || (shExpMatch(host, "spoprod-a.akamaihd.net"))  
        || (shExpMatch(host, "ssw.live.com"))
        || (shExpMatch(host, "staffhub.ms"))
        || (shExpMatch(host, "staffhub.uservoice.com"))
        || (shExpMatch(host, "storage.live.com"))
        || (shExpMatch(host, "sway.com"))              
        || (shExpMatch(host, "swx.cdn.skype.com"))  
        || (shExpMatch(host, "telemetry.remoteapp.windowsazure.com"))         
        || (shExpMatch(host, "telemetryservice.firstpartyapps.oaspapps.com"))    
        || (shExpMatch(host, "web.microsoftstream.com"))         
        || (shExpMatch(host, "weu-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "weu-odc.officeapps.live.com"))         
        || (shExpMatch(host, "weu-roaming.officeapps.live.com"))
        || (shExpMatch(host, "wu.client.hip.live.com"))
        || (shExpMatch(host, "wus-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "wus-firstpartyapps.oaspapps.com"))  
        || (shExpMatch(host, "wus-odc.officeapps.live.com"))         
        || (shExpMatch(host, "wus-roaming.officeapps.live.com"))
        || (shExpMatch(host, "wus-www.sway-cdn.com"))
        || (shExpMatch(host, "wus-www.sway-extensions.com"))   
        || (shExpMatch(host, "www.digicert.com"))
        || (shExpMatch(host, "www.google-analytics.com"))
        || (shExpMatch(host, "www.onedrive.com"))
        || (shExpMatch(host, "www.remoteapp.windowsazure.com"))
        || (shExpMatch(host, "www.youtube.com"))
        || (shExpMatch(host, "xsi.outlook.com")))


        

    {
        return proxyserver;
    }

    //Catchall for all other traffic to another proxy 

else return proxyserver;
}

ตัวอย่างที่สองคือ การสาธิตวิธีการที่เราแนะนำในการจัดการการเชื่อมต่อเมื่อวงจร ExpressRoute และอินเทอร์เน็ตพร้อมใช้งาน ส่งปลายทางที่โฆษณาของ ExpressRoute ไปยังวงจร ExpressRoute และปลายทางที่โฆษณาทางอินเทอร์เน็ตเท่านั้นไปยังพร็อกซี

โค้ดส่วนย่อย:

// JavaScript source code
//April 2018 Update
// Consolidated FQDNs of URLS which are reachable via Microsoft peering over ExpressRoute. All other traffic sent to a proxy in this example. 
//Every Effort is made to ensure 100% accuracy but this PAC should be used as an example and cross-checked with your traffic flow needs and the Office 365 URL & IP page. 
//Intended only for Worldwide Office 365 instances, which the vast majority of customers will be using
//PAC presumes all Office 365 BGP communities/route filters are allowed.

function FindProxyForURL(url, host)
{
    // Define proxy server
    var proxyserver = "PROXY 10.10.10.10:8080";
    // Make host lowercase
    var lhost = host.toLowerCase();
    host = lhost;
    //SUB-FQDNs of ExpressRoutable wildcards which need to be explicitly sent to the proxy at the top of the PAC because they arent ER routable
    if ((shExpMatch(host, "xsi.outlook.com"))
        || (shExpMatch(host, "r3.res.outlook.com"))
        || (shExpMatch(host, "quicktips.skypeforbusiness.com"))
        || (shExpMatch(host, "*.um.outlook.com")))					
    {
        return proxyserver;
    }
        //EXPRESS ROUTE DIRECT
    else if ((isPlainHostName(host))
  
            || (shExpMatch(host, "*.aria.microsoft.com"))
            || (shExpMatch(host, "*.asm.skype.com"))
            || (shExpMatch(host, "*.broadcast.skype.com"))
            || (shExpMatch(host, "*.cc.skype.com"))
            || (shExpMatch(host, "*.config.skype.com"))    
            || (shExpMatch(host, "*.conv.skype.com"))
            || (shExpMatch(host, "*.dc.trouter.io"))
            || (shExpMatch(host, "*.lync.com"))
            || (shExpMatch(host, "*.manage.office.com"))
            || (shExpMatch(host, "*.msg.skype.com"))
            || (shExpMatch(host, "*.outlook.com"))
            || (shExpMatch(host, "*.outlook.office.com"))
            || (shExpMatch(host, "*.pipe.aria.microsoft.com")) 
            || (shExpMatch(host, "*.pipe.skype.com")) 
            || (shExpMatch(host, "*.portal.cloudappsecurity.com"))
            || (shExpMatch(host, "*.protection.office.com"))
            || (shExpMatch(host, "*.protection.outlook.com"))
            || (shExpMatch(host, "*.sharepoint.com")) 
            || (shExpMatch(host, "*.skypeforbusiness.com")) 
            || (shExpMatch(host, "*.svc.ms"))   
            || (shExpMatch(host, "*.teams.microsoft.com"))  
            || (shExpMatch(host, "*.teams.skype.com"))  
            || (shExpMatch(host, "*broadcast.officeapps.live.com"))
            || (shExpMatch(host, "*excel.officeapps.live.com"))
            || (shExpMatch(host, "*onenote.officeapps.live.com"))
            || (shExpMatch(host, "*powerpoint.officeapps.live.com"))
            || (shExpMatch(host, "*view.officeapps.live.com"))                                 
            || (shExpMatch(host, "*visio.officeapps.live.com"))
            || (shExpMatch(host, "*word-edit.officeapps.live.com"))
            || (shExpMatch(host, "*word-view.officeapps.live.com"))
            || (shExpMatch(host, "account.office.net"))
            || (shExpMatch(host, "adminwebservice.microsoftonline.com"))
            || (shExpMatch(host, "agent.office.net"))  
            || (shExpMatch(host, "apc.delve.office.com"))
            || (shExpMatch(host, "api.login.microsoftonline.com"))
            || (shExpMatch(host, "api.passwordreset.microsoftonline.com"))
            || (shExpMatch(host, "aus.delve.office.com"))
            || (shExpMatch(host, "becws.microsoftonline.com"))
            || (shExpMatch(host, "broadcast.skype.com"))  
            || (shExpMatch(host, "browser.pipe.aria.microsoft.com"))  
            || (shExpMatch(host, "can.delve.office.com")) 
            || (shExpMatch(host, "ccs.login.microsoftonline.com"))  
            || (shExpMatch(host, "ccs-sdf.login.microsoftonline.com"))
            || (shExpMatch(host, "clientconfig.microsoftonline-p.net"))
            || (shExpMatch(host, "companymanager.microsoftonline.com"))
            || (shExpMatch(host, "config.edge.skype.com"))
            || (shExpMatch(host, "delve.office.com"))
            || (shExpMatch(host, "device.login.microsoftonline.com"))
            || (shExpMatch(host, "domains.live.com")) 
            || (shExpMatch(host, "eur.delve.office.com"))
            || (shExpMatch(host, "gbr.delve.office.com"))
            || (shExpMatch(host, "hip.microsoftonline-p.net"))
            || (shExpMatch(host, "hipservice.microsoftonline.com"))
            || (shExpMatch(host, "home.office.com"))
            || (shExpMatch(host, "ind.delve.office.com"))
            || (shExpMatch(host, "jpn.delve.office.com"))
            || (shExpMatch(host, "kor.delve.office.com"))
            || (shExpMatch(host, "lam.delve.office.com"))
            || (shExpMatch(host, "login.microsoft.com"))
            || (shExpMatch(host, "login.microsoftonline.com"))
            || (shExpMatch(host, "login.microsoftonline-p.net"))
            || (shExpMatch(host, "login.windows.net"))
            || (shExpMatch(host, "logincert.microsoftonline.com"))
            || (shExpMatch(host, "loginex.microsoftonline.com"))
            || (shExpMatch(host, "login-us.microsoftonline.com"))
            || (shExpMatch(host, "manage.office.com"))
            || (shExpMatch(host, "mobile.pipe.aria.microsoft.com"))
            || (shExpMatch(host, "nam.delve.office.com"))
            || (shExpMatch(host, "nexus.microsoftonline-p.net"))
            || (shExpMatch(host, "office.live.com")) 
            || (shExpMatch(host, "officeapps.live.com")) 
            || (shExpMatch(host, "outlook.office365.com")) 
            || (shExpMatch(host, "passwordreset.microsoftonline.com"))
            || (shExpMatch(host, "pipe.skype.com"))
            || (shExpMatch(host, "portal.office.com"))
            || (shExpMatch(host, "prod.registrar.skype.com"))
            || (shExpMatch(host, "prod.tpc.skype.com"))
            || (shExpMatch(host, "protection.office.com"))
            || (shExpMatch(host, "provisioningapi.microsoftonline.com"))
            || (shExpMatch(host, "s-0001.s-msedge.net"))
            || (shExpMatch(host, "s-0004.s-msedge.net"))
            || (shExpMatch(host, "scsinstrument-ss-us.trafficmanager.net")) 
            || (shExpMatch(host, "scsquery-ss-asia.trafficmanager.net"))
            || (shExpMatch(host, "scsquery-ss-eu.trafficmanager.net")) 
            || (shExpMatch(host, "scsquery-ss-us.trafficmanager.net"))  
            || (shExpMatch(host, "signup.microsoft.com"))
            || (shExpMatch(host, "smtp.office365.com"))  
            || (shExpMatch(host, "stamp2.login.microsoftonline.com"))
            || (shExpMatch(host, "suite.office.net")) 
            || (shExpMatch(host, "teams.microsoft.com")) 
            || (shExpMatch(host, "webshell.suite.office.com")) 
            || (shExpMatch(host, "www.office.com")))             

       
    {
        return "DIRECT";
    }

        //Catchall for all other traffic to proxy
    else
    {
        return proxyserver;
    }
}

ตัวอย่างที่สามจะสาธิตการส่งคำร้องขอเครือข่ายทั้งหมดที่เชื่อมโยงกับ Office 365 ไปยังปลายทางเดียว โดยปกติจะใช้เพื่อข้ามการตรวจสอบคำร้องขอเครือข่าย Office 365 ทั้งหมด และยังมีรูปแบบที่จุดสิ้นสุดที่ได้รับการเผยแพร่ทั้งหมดจะอยู่ในรายการในรูปแบบ PAC เพื่อใช้สำหรับการเลือกกำหนดของคุณ

โค้ดส่วนย่อย:

// JavaScript source code
//April 2018 Update new URLS go live 1st May 2018 -
//Consolidated FQDNs required to access Office 365 - All services including optional components covered and elements covered under wildcards removed. 
//Some repeated domains have been consoliodated into unpublished wildcards in order to keep the file as small as possible.
//Includes Core ProPlus URLs but not Office Mobile/IPAD/IOS/ANDROID fqdns from https://support.office.com/en-gb/article/Network-requests-in-Office-365-ProPlus-eb73fcd1-ca88-4d02-a74b-2dd3a9f3364d
//Every Effort is made to ensure 100% accuracy but this PAC should be used as an example and cross-checked with your needs and the Office 365 URL & IP page
//Intended only for Worldwide Office 365 instances, which the vast majority of customers will be using

function FindProxyForURL(url, host)
{
    // Define proxy server
    var proxyserver = "PROXY 10.10.10.10:8080";
    // Make host lowercase
    var lhost = host.toLowerCase();
    host = lhost;

   if  ((shExpMatch(host, "*.aadrm.com"))

        || (shExpMatch(host, "*.adhybridhealth.azure.com"))
        || (shExpMatch(host, "*.adl.windows.com"))
        || (shExpMatch(host, "*.api.microsoftstream.com"))  
        || (shExpMatch(host, "*.api.skype.com"))  
        || (shExpMatch(host, "*.asm.skype.com"))     
        || (shExpMatch(host, "*.assets-yammer.com"))
        || (shExpMatch(host, "*.azureedge.net"))   
        || (shExpMatch(host, "*.azurerms.com"))
        || (shExpMatch(host, "*.broadcast.skype.com"))
        || (shExpMatch(host, "*.broker.skype.com"))
        || (shExpMatch(host, "*.cc.skype.com"))
        || (shExpMatch(host, "*.cloudapp.net")) 
        || (shExpMatch(host, "*.config.skype.com"))
        || (shExpMatch(host, "*.conv.skype.com"))
        || (shExpMatch(host, "*.dc.trouter.io"))
        || (shExpMatch(host, "*.entrust.net")) 
        || (shExpMatch(host, "*.geotrust.com"))
        || (shExpMatch(host, "*.helpshift.com"))
        || (shExpMatch(host, "*.hockeyapp.net"))       
        || (shExpMatch(host, "*.localytics.com"))
        || (shExpMatch(host, "*.log.optimizely.com"))     
        || (shExpMatch(host, "*.lync.com"))
        || (shExpMatch(host, "*.microsoft.com"))
        || (shExpMatch(host, "*.microsoftonline.com"))
        || (shExpMatch(host, "*.microsoftonline-p.com"))
        || (shExpMatch(host, "*.microsoftonline-p.net"))
        || (shExpMatch(host, "*.msecnd.net"))
        || (shExpMatch(host, "*.msedge.net"))
        || (shExpMatch(host, "*.msg.skype.com")) 
        || (shExpMatch(host, "*.msocdn.com"))
        || (shExpMatch(host, "*.mstea.ms"))
        || (shExpMatch(host, "*.o365weve.com"))
        || (shExpMatch(host, "*.office.com"))
        || (shExpMatch(host, "*.office.net"))
        || (shExpMatch(host, "*.office365.com"))
        || (shExpMatch(host, "*.omniroot.com"))
        || (shExpMatch(host, "*.onenote.com"))
        || (shExpMatch(host, "*.onmicrosoft.com"))
        || (shExpMatch(host, "*.outlook.com"))
        || (shExpMatch(host, "*.pipe.skype.com")) 
        || (shExpMatch(host, "*.phonefactor.net")) 
        || (shExpMatch(host, "*.portal.cloudappsecurity.com"))
        || (shExpMatch(host, "*.public-trust.com"))
        || (shExpMatch(host, "*.search.production.apac.trafficmanager.net"))
        || (shExpMatch(host, "*.search.production.emea.trafficmanager.net"))
        || (shExpMatch(host, "*.search.production.us.trafficmanager.net"))
        || (shExpMatch(host, "*.secure.skypeassets.com"))
        || (shExpMatch(host, "*.sfbassets.com"))  
        || (shExpMatch(host, "*.sharepoint.com"))
        || (shExpMatch(host, "*.sharepointonline.com"))
        || (shExpMatch(host, "*.skypeforbusiness.com"))
        || (shExpMatch(host, "*.svc.ms")) 
        || (shExpMatch(host, "*.sway.com"))
        || (shExpMatch(host, "*.symcb.com"))
        || (shExpMatch(host, "*.symcd.com"))
        || (shExpMatch(host, "*.teams.skype.com"))
        || (shExpMatch(host, "*.tenor.com"))
        || (shExpMatch(host, "*.users.storage.live.com"))
        || (shExpMatch(host, "*.verisign.com"))
        || (shExpMatch(host, "*.verisign.net"))
        || (shExpMatch(host, "*.windows.net"))
        || (shExpMatch(host, "*.yammer.com"))
        || (shExpMatch(host, "*.yammerusercontent.com"))         
        || (shExpMatch(host, "*broadcast.officeapps.live.com"))
        || (shExpMatch(host, "*excel.officeapps.live.com"))
        || (shExpMatch(host, "*onenote.officeapps.live.com"))
        || (shExpMatch(host, "*powerpoint.officeapps.live.com"))
        || (shExpMatch(host, "*view.officeapps.live.com"))
        || (shExpMatch(host, "*visio.officeapps.live.com"))
        || (shExpMatch(host, "*word-edit.officeapps.live.com"))
        || (shExpMatch(host, "*word-view.officeapps.live.com"))    
        || (shExpMatch(host, "account.activedirectory.windowsazure.com"))
        || (shExpMatch(host, "ad.atdmt.com"))
        || (shExpMatch(host, "admin.onedrive.com"))
        || (shExpMatch(host, "ajax.aspnetcdn.com"))
        || (shExpMatch(host, "aka.ms"))
        || (shExpMatch(host, "amp.azure.net"))
        || (shExpMatch(host, "api.microsoftstream.com"))
        || (shExpMatch(host, "apis.live.net"))
        || (shExpMatch(host, "apps.identrust.com")) 
        || (shExpMatch(host, "assets.onestore.ms"))
        || (shExpMatch(host, "auth.gfx.ms"))
        || (shExpMatch(host, "broadcast.skype.com "))
        || (shExpMatch(host, "cacerts.digicert.com"))    
        || (shExpMatch(host, "cdn.odc.officeapps.live.com"))  
        || (shExpMatch(host, "cdn.onenote.net"))
        || (shExpMatch(host, "cdn.optimizely.com"))
        || (shExpMatch(host, "cert.int-x3.letsencrypt.org"))
        || (shExpMatch(host, "client.hip.live.com"))     
        || (shExpMatch(host, "config.edge.skype.com"))
        || (shExpMatch(host, "connect.facebook.net"))
        || (shExpMatch(host, "crl.globalsign.com"))
        || (shExpMatch(host, "crl.globalsign.net"))
        || (shExpMatch(host, "crl.identrust.com"))    
        || (shExpMatch(host, "crl3.digicert.com"))  
        || (shExpMatch(host, "crl4.digicert.com"))
        || (shExpMatch(host, "cus-odc.officeapps.live.com"))              
        || (shExpMatch(host, "cus-roaming.officeapps.live.com"))      
        || (shExpMatch(host, "dc.services.visualstudio.com"))
        || (shExpMatch(host, "domains.live.com"))
        || (shExpMatch(host, "ea-000.ocws.officeapps.live.com")) 
        || (shExpMatch(host, "ea-roaming.officeapps.live.com"))           
        || (shExpMatch(host, "ecn.dev.virtualearth.net"))
        || (shExpMatch(host, "eus2-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "eus2-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "eus-odc.officeapps.live.com"))              
        || (shExpMatch(host, "eus-www.sway-cdn.com"))
        || (shExpMatch(host, "eus-www.sway-extensions.com"))
        || (shExpMatch(host, "feedback.skype.com"))
        || (shExpMatch(host, "firstpartyapps.oaspapps.com"))
        || (shExpMatch(host, "g.live.com"))
        || (shExpMatch(host, "groupsapi2-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi3-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi4-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "groupsapi-prod.outlookgroups.ms"))  
        || (shExpMatch(host, "isrg.trustid.ocsp.identrust.com"))
        || (shExpMatch(host, "latest-swx.cdn.skype.com"))
        || (shExpMatch(host, "liverdcxstorage.blob.core.windowsazure.com"))
        || (shExpMatch(host, "management.azure.com"))
        || (shExpMatch(host, "mem.gfx.ms"))
        || (shExpMatch(host, "mrodevicemgr.officeapps.live.com"))               
        || (shExpMatch(host, "ncus-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "ncus-roaming.officeapps.live.com"))                 
        || (shExpMatch(host, "neu-000.ocws.officeapps.live.com")) 
        || (shExpMatch(host, "neu-odc.officeapps.live.com"))              
        || (shExpMatch(host, "neu-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "nexus.officeapps.live.com"))
        || (shExpMatch(host, "nexusrules.officeapps.live.com"))
        || (shExpMatch(host, "nps.onyx.azure.net"))   
        || (shExpMatch(host, "ocsa.officeapps.live.com"))
        || (shExpMatch(host, "ocsp.digicert.com"))
        || (shExpMatch(host, "ocsp.globalsign.com"))
        || (shExpMatch(host, "ocsp.int-x3.letsencrypt.org"))
        || (shExpMatch(host, "ocsp.msocsp.com"))     
        || (shExpMatch(host, "ocsp2.globalsign.com")) 
        || (shExpMatch(host, "ocspx.digicert.com"))
        || (shExpMatch(host, "ocsredir.officeapps.live.com"))
        || (shExpMatch(host, "ocws.officeapps.live.com"))
        || (shExpMatch(host, "odc.officeapps.live.com"))  
        || (shExpMatch(host, "office.live.com"))
        || (shExpMatch(host, "officeapps.live.com"))
        || (shExpMatch(host, "officecdn.microsoft.com.edgekey.net"))              
        || (shExpMatch(host, "officecdn.microsoft.com.edgesuite.net"))
        || (shExpMatch(host, "ols.officeapps.live.com"))  
        || (shExpMatch(host, "oneclient.sfx.ms"))
        || (shExpMatch(host, "outlook.uservoice.com"))
        || (shExpMatch(host, "pipe.skype.com"))
        || (shExpMatch(host, "platform.linkedin.com"))
        || (shExpMatch(host, "policykeyservice.dc.ad.msft.net"))
        || (shExpMatch(host, "prod.firstpartyapps.oaspapps.com.akadns.net"))
        || (shExpMatch(host, "prod.registrar.skype.com"))
        || (shExpMatch(host, "prod.tpc.skype.com"))
        || (shExpMatch(host, "s.ytimg.com"))
        || (shExpMatch(host, "s0.assets-yammer.com"))  
        || (shExpMatch(host, "s-0001.s-msedge.net")) 
        || (shExpMatch(host, "s-0004.s-msedge.net"))   
        || (shExpMatch(host, "scsinstrument-ss-us.trafficmanager.net")) 
        || (shExpMatch(host, "scsquery-ss-asia.trafficmanager.net"))
        || (shExpMatch(host, "scsquery-ss-eu.trafficmanager.net")) 
        || (shExpMatch(host, "scsquery-ss-us.trafficmanager.net")) 
        || (shExpMatch(host, "scus-000.ocws.officeapps.live.com"))
        || (shExpMatch(host, "scus-odc.officeapps.live.com"))         
        || (shExpMatch(host, "scus-roaming.officeapps.live.com"))                 
        || (shExpMatch(host, "sea-odc.officeapps.live.com"))              
        || (shExpMatch(host, "sea-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "secure.globalsign.com"))
        || (shExpMatch(host, "site-cdn.onenote.net"))
        || (shExpMatch(host, "skydrive.wns.windows.com"))
        || (shExpMatch(host, "skypegraph.skype.com"))
        || (shExpMatch(host, "skypemaprdsitus.trafficmanager.net"))
        || (shExpMatch(host, "spoprod-a.akamaihd.net"))
        || (shExpMatch(host, "ssw.live.com"))
        || (shExpMatch(host, "staffhub.ms"))
        || (shExpMatch(host, "staffhub.uservoice.com"))    
        || (shExpMatch(host, "storage.live.com"))
        || (shExpMatch(host, "swx.cdn.skype.com"))
        || (shExpMatch(host, "telemetry.remoteapp.windowsazure.com"))
        || (shExpMatch(host, "telemetryservice.firstpartyapps.oaspapps.com"))
        || (shExpMatch(host, "web.microsoftstream.com"))   
        || (shExpMatch(host, "weu-000.ocws.officeapps.live.com")) 
        || (shExpMatch(host, "weu-odc.officeapps.live.com"))              
        || (shExpMatch(host, "weu-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "wu.client.hip.live.com"))
        || (shExpMatch(host, "wus-000.ocws.officeapps.live.com"))  
        || (shExpMatch(host, "wus-firstpartyapps.oaspapps.com"))  
        || (shExpMatch(host, "wus-odc.officeapps.live.com"))              
        || (shExpMatch(host, "wus-roaming.officeapps.live.com"))              
        || (shExpMatch(host, "wus-www.sway-cdn.com"))
        || (shExpMatch(host, "wus-www.sway-extensions.com"))        
        || (shExpMatch(host, "www.digicert.com"))
        || (shExpMatch(host, "www.google-analytics.com"))
        || (shExpMatch(host, "www.onedrive.com"))
        || (shExpMatch(host, "www.remoteapp.windowsazure.com"))
        || (shExpMatch(host, "www.youtube.com")))




    {
        return proxyserver;
    }

        //Catchall for all other traffic to another proxy

    else return "PROXY 10.10.10.11:8080";
}

ต่อไปนี้คือเครื่องมือเพิ่มเติมสองสามอย่างจากชุมชน ถ้าคุณได้ส้างสิ่งที่คุณต้องการแชร์ ให้เขียนบันทึกย่อในข้อคิดเห็น ไม่มีเครื่องมือของชุมชนที่อ้างอิงในบทความนี้ที่ได้รับการสนับสนุนอย่างเป็นทางการหรือได้รับการบำรุงรักษาโดย Microsoft และมีอยู่ที่นี่สำหรับความสะดวกสบายของคุณ

  • นี่คือเครื่องมือที่เก่าที่สุดที่ชุมชนสร้างขึ้นเพื่อช่วยจัดการกระบวนการ เครื่องมือถูกสร้างขึ้นโดยสมาชิกของชุมชน Office 365 นี่คือลิงก์สำหรับดาวน์โหลด

  • หลักฐานแนวคิดที่มีกฎไฟร์วอลล์ที่สามารถส่งออก: Microsoft Cloud IP API

  • จาก IT Praktyk: การแปลง RSS และ การแปลง XML

  • จาก Peter Abele: ดาวน์โหลด

  • ใช้การวิเคราะห์เครือข่ายของคุณเพื่อกำหนดว่าคำขอเครือข่ายใดที่ควรข้ามโครงสร้างพื้นฐานพร็อกซีของคุณ FQDN ที่พบบ่อยที่สุดที่ใช้ในการข้ามพร็อกซีมีดังต่อไปนี้ เนื่องจากปริมาณการรับส่งข้อมูลเครือข่ายที่ส่งและได้รับจากจุดสิ้นสุดเหล่านี้

    outlook.office365.com
    outlook.office.com
    <tenant-name>.sharepoint.com
    <tenant-name>-my.sharepoint.com
    <tenant-name>-<app>.sharepoint.com
    *.Lync.com
    
  • ตรวจสอบให้แน่ใจว่าคำขอเครือข่ายที่ส่งไปยังไฟร์วอลล์ของคุณโดยตรงมีรายการที่สอดคล้องกันในรายการอนุญาตของไฟร์วอลล์เพื่ออนุญาตให้คำขอผ่านได้

การรวมเครือข่ายเฉพาะเขต

คุณทราบหรือไม่ว่า WAN ของ Microsoft เป็นแกนหลักที่ใหญ่ที่สุดในโลกนี้

เป็นเรื่องจริง เครือข่ายขนาดใหญ่นี้เป็นสิ่งที่ทำให้ Office 365 และบริการระบบคลาวด์ของเราทำงานโดยไม่คำนึงถึงตำแหน่งที่คุณอยู่ในโลก เครือข่ายของเราประกอบด้วยแบนด์วิดท์สูง เวลาแฝงต่ำ ลิงก์ที่ไม่สามารถผ่านได้ด้วยไฟเบอร์สีเข้มของเอกชนที่ยาวหลายพันไมล์ และการเชื่อมต่อหลายเทราบิตระหว่างศูนย์ข้อมูลและโหนดขอบ ทั้งหมดเพื่อให้ง่ายต่อการใช้บริการระบบคลาวด์ของเรา

ด้วยเครือข่ายเช่นนี้ คุณต้องการให้อุปกรณ์ขององค์กรของคุณเชื่อมต่อกับเครือข่ายของเราโดยเร็วที่สุด ด้วยความสัมพันธ์ peering ของ ISP มากกว่า 2500 รายทั่วโลกและ 70 แห่งที่มีอยู่ การได้รับจากเครือข่ายของคุณไปยังเครือข่ายของเราควรเป็นไปอย่างราบรื่น ไม่ใช่เรื่องเสียหายที่จะใช้เวลาสักครู่เพื่อให้แน่ใจว่า ISP ของคุณมีความสัมพันธ์ peering ของ ISP ของคุณนั้นดีที่สุด ต่อไปนี้คือตัวอย่างบางส่วน ของการส่งมอบ peering ที่ดีและไม่ดีไปยังเครือข่ายของเรา

คุณสามารถกำหนดค่าอุปกรณ์บนเครือข่ายของคุณด้วยตนเองหรือโดยอัตโนมัติเพื่อจัดการการร้องขอเครือข่ายแอปพลิเคชัน Office 365 ได้อย่างเหมาะสม ขึ้นอยู่กับอุปกรณ์ของคุณ การเปลี่ยนแปลงการกำหนดค่าที่คุณต้องทำเพื่อจัดการการรับส่งข้อมูลทางเครือข่าย Office 365 อย่างเหมาะสมจะขึ้นอยู่กับสภาพแวดล้อมของคุณ การร้องขอเครือข่าย Office 365 อาจได้รับประโยชน์จากการำหนดค่าเครือข่ายที่อนุญาตต่อไปนี้:

  • ให้ความสำคัญกับการรับส่งข้อมูลทางเครือข่ายที่สำคัญน้อยกว่า

  • การกำหนดเส้นทางไปยังทางออกภายในเครื่องเพื่อหลีกเลี่ยงการย้อนกลับผ่านลิงก์ WAN ที่ช้าในขณะที่ใช้ประโยชน์จากเวลาแฝงต่ำที่พร้อมใช้งานบนเครือข่าย Microsoft ต่อไปนี้คือการอภิปรายที่ดี โดยยึดตามการมีส่วนร่วมของลูกค้า

  • ใช้ DNS ใกล้ทางออกภายในเครื่องเพื่อให้แน่ใจว่าการร้องขอเครือข่ายที่ออกจากทางออกภายในเครื่องมาถึงตำแหน่งเพียร์ Microsoft ที่ใกล้เคียงที่สุด

  • การยกเว้นจากการตรวจสอบแพคเก็ตแบบลึกหรือการประมวลผลแพคเก็ตเครือข่ายแบบละเอียดอื่นๆ เพื่อให้ตรงตามข้อกำหนดเวลาแฝงในระดับ

อุปกรณ์เครือข่ายที่ทันสมัยมีความสามารถในการจัดการการร้องขอเครือข่ายสำหรับแอปพลิเคชันที่เชื่อถือได้ เช่น Office 365 แตกต่างจากการรับส่งข้อมูลทางอินเทอร์เน็ตทั่วไปที่ไม่น่าเชื่อถือ ด้วยแนวความคิดใหม่เกี่ยวกับโซลูชัน SD-WAN ความแตกต่างดังกล่าวของการรับส่งข้อมูลและการเลือกเส้นทางยังสามารถดำเนินการด้วยการรับรู้การเปลี่ยนแปลงสถานะของเครือข่าย เช่น จุดในเวลาว่าง เวลาแฝง หรือประสิทธิภาพการทำงานของเส้นทางการเชื่อมต่อต่างๆ ระหว่างผู้ใช้กับระบบคลาวด์

ดู การวางแผนเครือข่ายและการโยกย้ายสำหรับ Office 365, แผนการแก้ไขปัญหาประสิทธิภาพการทำงานสำหรับ Office 365 และ รายการการวางแผนการปรับใช้สำหรับ Office 365 สำหรับแนวทางเพิ่มเติมเกี่ยวกับการวางแผนการกำหนดค่าเครือข่ายของคุณ

เมื่อต้องการใช้สถานการณ์นี้:

ตรวจสอบกับผู้ให้บริการโซลูชันเครือข่ายหรือผู้ให้บริการอินเทอร์เน็ตของคุณว่าพวกเขาสามารถใช้ข้อกำหนด URL และ IP ของ Office 365 จาก XML เพื่ออำนวยความสะดวกการใช้เครือข่ายขาออกที่มีโอเวอร์เฮดต่ำและอยู่ในพื้นที่ (ของผู้ใช้) สำหรับปริมาณการใช้เครือข่ายของ Office 365 ได้หรือไม่ รวมถึงจัดการลำดับความสำคัญเมื่อเทียบกับแอปพลิเคชันอื่นๆ และปรับเส้นทางเครือข่ายสำหรับการเชื่อมต่อ Office 365 ไปยังเครือข่าย Microsoft ซึ่งขึ้นอยู่กับการเปลี่ยนแปลงเงื่อนไขเครือข่าย บางโซลูชันดาวน์โหลดและทำให้ข้อกำหนด XML ของ URL และ IP ของ Office 365 เป็นอัตโนมัติในสแตก

ตรวจสอบให้แน่ใจอยู่เสมอว่าโซลูชันที่ใช้งานได้มีระดับความยืดหยุ่นที่จำเป็น ความซ้ำซ้อนทางภูมิศาสตร์ของเส้นทางเครือข่ายที่เหมาะสมสำหรับการรับส่งข้อมูล Office 365 และสามารถรองรับการเปลี่ยนแปลง URL และ IP ของ Office 365 เมื่อถูกเผยแพร่ได้

เพื่อช่วยให้คุณระบุและแยกข้อแตกต่างของปริมาณการใช้งานเครือข่าย Office 365 บริการเว็บใหม่จึงเผยแพร่จุดสิ้นสุด Office 365 ทำให้ง่ายต่อการประเมิน กำหนดค่า และทันการเปลี่ยนแปลงอยู่เสมอ บริการเว็บใหม่นี้ (ในขณะนี้เป็นรุ่นตัวอย่าง) จะแทนที่รายการจุดสิ้นสุดในบทความ URL และช่วงที่อยู่ IP ของ Office 365 พร้อมกับเวอร์ชัน RSS และ XML ของข้อมูลนั้น รูปแบบของข้อมูลจุดสิ้นสุดเหล่านี้มีการวางแผนที่จะเผยแพร่ในอนาคตอันใกล้

ในฐานะลูกค้าหรือผู้จำหน่ายอุปกรณ์พารามิเตอร์เครือข่าย คุณสามารถทดสอบบริการเว็บใหม่บน REST สำหรับที่อยู่ IP และรายการ FQDN ของ Office 365 ที่เป็นรุ่นตัวอย่างในขณะนี้:

ในฐานะลูกค้า คุณสามารถใช้บริการเว็บนี้เพื่อ:

  • อัปเดตสคริปต์ PowerShell ของคุณเพื่อรับข้อมูลจุดสิ้นสุด Office 365 และปรับเปลี่ยนการจัดรูปแบบใดก็ตามสำหรับอุปกรณ์เครือข่ายของคุณ

  • ใช้ข้อมูลนี้เพื่ออัปเดตไฟล์ PAC ที่ปรับใช้กับคอมพิวเตอร์ไคลเอ็นต์

ในฐานะผู้จำหน่ายอุปกรณ์พารามิเตอร์สำหรับเครือข่าย คุณสามารถใช้บริการเว็บนี้เพื่อ:

  • สร้างและทดสอบซอฟต์แวร์อุปกรณ์เพื่อดาวน์โหลดรายการการกำหนดค่าอัตโนมัติ

  • ตรวจสอบเวอร์ชันปัจจุบัน

  • รับการเปลี่ยนแปลงปัจจุบัน

ส่วนต่อไปนี้อธิบายตัวอย่างของบริการเว็บนี้ ซึ่งอาจมีการเปลี่ยนแปลงตลอดเวลาจนกว่าจะพร้อมให้บริการโดยทั่วไป

ข้อมูลบนบริการเว็บเป็นข้อมูลล่าสุด ยกเว้นปัญหาที่ทราบแล้วต่อไปนี้:

พารามิเตอร์ทั่วไป

พารามิเตอร์เหล่านี้จะเหมือนกันในวิธีการบริการเว็บทั้งหมด:

  • รูปแบบ=CSV | JSON – พารามิเตอร์ของสตริงคิวรี ตามค่าเริ่มต้น รูปแบบข้อมูลที่ส่งกลับคือ JSON ใส่พารามิเตอร์เสริมนี้เพื่อส่งกลับข้อมูลในรูปแบบค่าที่คั่นด้วยเครื่องหมายจุลภาค (CSV)

  • ClientRequestId – พารามิเตอร์ของสตริงคิวรี GUID ที่จำเป็นที่คุณสร้างขึ้นสำหรับการรวมเซสชันไคลเอ็นต์ คุณควรสร้าง GUID สำหรับไคลเอ็นต์แต่ละเครื่องที่เรียกใช้บริการเว็บ ห้ามใช้ GUID ที่แสดงในตัวอย่างเหล่านี้ เนื่องจากอาจถูกบล็อกโดยบริการเว็บในอนาคต รูปแบบ GUID คือ xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx โดย x หมายถึงตัวเลขฐานสิบหก เมื่อต้องการสร้าง GUID ให้ใช้คำสั่ง PowerShell New-Guid

วิธีการเวอร์ชันทางเว็บ

Microsoft อัปเดตที่อยู่ IP และรายการ FQDN ของ Office 365 ทุกๆ สิ้นเดือนและบ่อยขึ้นตามการต้องการด้านปฏิบัติการ ข้อมูลสำหรับแต่ละอินสแตนซ์ที่เผยแพร่จะกำหนดหมายเลขเวอร์ชัน วิธีการเวอร์ชันทางเว็บจะช่วยให้คุณตรวจสอบเวอร์ชันล่าสุดแต่ละอินสแตนซ์ของบริการ Office 365 ควรเปลี่ยนจุดสิ้นสุดเดือนละหนึ่งครั้ง เราขอแนะนำให้คุณตรวจสอบเวอร์ชันทุกวัน หรือบ่อยที่สุด ทุกชั่วโมง

มีหนึ่งพารามิเตอร์สำหรับวิธีการเวอร์ชันทางเว็บ:

  • AllVersions=true – พารามิเตอร์ของสตริงคิวรี ตามค่าเริ่มต้น เวอร์ชันที่ถูกส่งกลับคือเวอร์ชันล่าสุด ใส่พารามิเตอร์เสริมนี้เพื่อขอเวอร์ชันที่เผยแพร่ทั้งหมด

  • อินสแตนซ์ – พารามิเตอร์เส้นทาง พารามิเตอร์เสริมนี้จะระบุอินสแตนซ์เพื่อส่งกลับเวอร์ชัน ถ้าละไว้ จะส่งกลับอินสแตนซ์ทั้งหมด อินสแตนซ์ที่ถูกต้องคือ: O365Worldwide, O365China, O365Germany, O365USGovDoD, O365USGovGCCHigh

ผลลัพธ์จากวิธีการเวอร์ชันทางเว็บอาจเป็นระเบียนเดียวหรืออาร์เรย์ระเบียนก็ได้ องค์ประกอบของแต่ละระเบียนคือ:

  • อินสแตนซ์ – ชื่อย่อของอินสแตนซ์ของบริการ Office 365

  • ล่าสุด – เวอร์ชันล่าสุดสำหรับจุดสิ้นสุดของอินสแตนซ์ที่ระบุ

  • เวอร์ชัน – รายการเสริมที่มีเวอร์ชันก่อนหน้าทั้งหมดสำหรับอินสแตนซ์ที่ระบุ

ตัวอย่าง:

ตัวอย่างการขอ URI ที่ 1: https://endpoints.office.com/version?ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

URI นี้จะส่งกลับเวอร์ชันล่าสุดของแต่ละอินสแตนซ์ของบริการ Office 365 ตัวอย่างผลลัพธ์:

[{"instance":"O365Worldwide","latest":"2018030200"},{"instance":"O365China","latest":"2018020100"},{"instance":"O365Germany","latest":"2018020100"},{"instance":"O365USGovDoD","latest":"2018030200"},{"instance":"O365USGovGCCHigh","latest":"2018030200"}]

สิ่งสำคัญ: GUID สำหรับพารามิเตอร์ ClientRequestID ใน URI เหล่านี้เป็นเพียงตัวอย่างเท่านั้น เมื่อต้องการลองใช้ URI ของบริการเว็บ ให้สร้าง GUID ของคุณเอง GUID ที่แสดงในตัวอย่างเหล่านี้อาจถูกบล็อกโดยบริการเว็บในอนาคต

ตัวอย่างการขอ URI ที่ 2: https://endpoints.office.com/version/O365Worldwide?ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

URI นี้จะส่งกลับเวอร์ชันล่าสุดของอินสแตนซ์ของบริการ Office 365 ที่ระบุ ตัวอย่างผลลัพธ์:

{"instance":"O365Worldwide","latest":"2018031302"}

ตัวอย่างการขอ URI ที่ 3: https://endpoints.office.com/version/O365Worldwide?Format=CSV&ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

URI นี้แสดงผลลัพธ์ในรูปแบบ CSV ตัวอย่างผลลัพธ์:

instance,latest
O365Worldwide,2018031302

ตัวอย่างการขอ URI ที่ 4: https://endpoints.office.com/version/O365Worldwide?Format=CSV&AllVersions=true&ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

URI นี้จะแสดงเวอร์ชันก่อนหน้าทั้งหมดที่เผยแพร่สำหรับอินสแตนซ์บริการ Office 365 Worldwide ตัวอย่างผลลัพธ์:

{"instance":"O365Worldwide","latest":"2018031302","versions":["2018031302","2018031301","2018031300","2018030200","2018020701","2018020700","2018020100","2017121200","2017120800"]}

วิธีการจุดสิ้นสุดทางเว็บ

วิธีการจุดสิ้นสุดทางเว็บจะส่งกลับระเบียนทั้งหมดสำหรับช่วงที่อยู่ IP และ URL ที่สร้างขึ้นเป็นบริการ Office 365 พารามิเตอร์สำหรับวิธีการจุดสิ้นสุดทางเว็บคือ:

  • ServiceAreas – พารามิเตอร์ของสตริงคิวรี รายชื่อพื้นที่ให้บริการที่คั่นด้วยเครื่องหมายจุลภาค รายการที่ถูกต้องคือทั่วไป, Exchange, SharePoint, Skype เนื่องจากรายชื่อพื้นที่ให้บริการทั่วไปคือข้อกำหนดเบื้องต้นสำหรับพื้นที่ให้บริการอื่นๆ จึงต้องมีอยู่ในบริการเว็บอยู่เสมอ ถ้าคุณไม่ใส่พารามิเตอร์นี้ พื้นที่ให้บริการทั้งหมดจะถูกส่งกลับ

  • TenantName – พารามิเตอร์ของสตริงคิวรี ชื่อผู้เช่า Office 365 ของคุณ บริการเว็บจะนำชื่อที่คุณใส่ไว้ไปแทรกไว้ในส่วนของ URL ที่มีชื่อผู้เช่า ถ้าคุณไม่ได้ใส่ชื่อผู้เช่า ส่วนของ URL เหล่านั้นจะมีอักขระตัวแทน (*) พารามิเตอร์ TenantName ไม่รวมอยู่ในรุ่นตัวอย่าง

  • อินสแตนซ์ – พารามิเตอร์เส้นทาง พารามิเตอร์ที่จำเป็นนี้จะระบุอินสแตนซ์เพื่อส่งกลับจุดสิ้นสุด อินสแตนซ์ที่ถูกต้องคือ: O365Worldwide, O365China, O365Germany, O365USGovDoD, O365USGovGCCHigh.

ผลลัพธ์จากวิธีการจุดสิ้นสุดทางเว็บคืออาร์เรย์ของระเบียนที่แต่ละระเบียนหมายถึงชุดจุดสิ้นสุด องค์ประกอบของแต่ละระเบียนคือ:

  • ID – หมายเลข ID ที่ไม่สามารถเปลี่ยนแปลงได้ของชุดจุดสิ้นสุด จำเป็น

  • serviceArea – พื้นที่ให้บริการที่เป็นส่วนหนึ่งของ: ทั่วไป, Exchange, SharePoint หรือ Skype จำเป็น

  • defaultUrls – URL สำหรับชุดจุดสิ้นสุดที่อยู่ในประเภท “ค่าเริ่มต้น” อาร์เรย์ JSON ของระเบียน DNS

  • allowUrls – URL สำหรับชุดจุดสิ้นสุดที่อยู่ในประเภท “อนุญาต” อาร์เรย์ JSON ของระเบียน DNS

  • optimizeUrls – URL สำหรับชุดจุดสิ้นสุดที่อยู่ในประเภท “ปรับให้เหมาะสม” อาร์เรย์ JSON ของระเบียน DNS

  • defaultTcpPorts – พอร์ต TCP สำหรับชุดจุดสิ้นสุดที่อยู่ในประเภท “ค่าเริ่มต้น” องค์ประกอบพอร์ตทั้งหมดจะถูกจัดรูปแบบเป็นรายการที่คั่นด้วยเครื่องหมายจุลภาคของพอร์ตหรือช่วงพอร์ตที่คั่นด้วยอักขระเส้นประ (-) พอร์ตของประเภทที่ระบุจะถูกนำไปใช้กับที่อยู่ IP ทั้งหมดในชุดจุดสิ้นสุดนั้น พอร์ตของประเภทที่ระบุจะยังถูกนำไปใช้กับ URL ทั้งหมดในชุดจุดสิ้นสุดนั้นและประเภทที่ต่ำกว่า ประเภทที่ต่ำกว่าจะถูกกำหนดตามลำดับ ปรับให้เหมาะสม อนุญาต และค่าเริ่มต้น โดย ค่าเริ่มต้น คือระดับต่ำสุด

  • allowTcpPorts – พอร์ต TCP สำหรับช่วงที่อยู่ IP ในชุดจุดสิ้นสุดนี้ที่อยู่ในประเภท “อนุญาต”

  • optimizeTcpPorts – พอร์ต TCP สำหรับช่วงที่อยู่ IP ในชุดจุดสิ้นสุดนี้ที่อยู่ในประเภท “ปรับให้เหมาะสม”

  • defaultUdpPorts – พอร์ต UDP สำหรับช่วงที่อยู่ IP ในชุดจุดสิ้นสุดนี้ที่อยู่ในประเภท “ค่าเริ่มต้น”

  • allowUdpPorts – พอร์ต UDP สำหรับช่วงที่อยู่ IP ในชุดจุดสิ้นสุดนี้ที่อยู่ในประเภท “อนุญาต”

  • optimizeUdpPorts – พอร์ต UDP สำหรับช่วงที่อยู่ IP ในชุดจุดสิ้นสุดนี้ที่อยู่ในประเภท “ปรับให้เหมาะสม”

  • ips – ช่วงที่อยู่ IP ที่เชื่อมโยงกับชุดจุดสิ้นสุดนี้ เป็นช่วงที่เชื่อมโยงกับพอร์ต TCP หรือ UDP ในรายการ

  • expressRoute – True หรือ False ถ้าชุดจุดสิ้นสุดนี้ถูกกำหนดเส้นทางผ่าน ExpressRoute จำเป็น

  • optionalImpact – ถ้าชุดจุดสิ้นสุดนี้ไม่จำเป็น ข้อความนี้จะอธิบายการทำงานของ Office 365 ที่จะหายไปถ้าไม่สามารถเข้าถึงจุดสิ้นสุดในชุดจุดสิ้นสุดนี้ได้ ถ้าไม่จำเป็นต้องมีชุดจุดสิ้นสุด องค์ประกอบนี้จะถูกยกเว้น

องค์ประกอบใดก็ตามที่ไม่มีการระบุว่าจำเป็น คือองค์ประกอบเสริมในผลลัพธ์ REST

ตัวอย่าง:

ตัวอย่างการขอ URI ที่ 1: https://endpoints.office.com/endpoints/O365Worldwide?ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

URI นี้จะรับจุดสิ้นสุดทั้งหมดสำหรับอินสแตนซ์ Office 365 Worldwide สำหรับงานทั้งหมด ตัวอย่างผลลัพธ์ที่แสดงบางส่วนของผลลัพธ์:

[
  {
    "id":1,
    "serviceArea":"Exchange",
    "allowUrls":["*.protection.outlook.com"],
    "allowTcpPorts":"443",
    "expressRoute":true
  },
  {"id":2,
    "serviceArea":"Exchange",
    "allowUrls":["*.mail.protection.outlook.com"],
    "allowTcpPorts":"25",
    "expressRoute":true
  }, 
  {
    "id":3,
    "serviceArea":"Exchange",
    "ips":["213.199.154.0/24","213.199.180.128/26","94.245.120.64/26",
    "207.46.163.0/24","216.32.180.0/23","23.103.144.0/20","65.55.88.0/24",
    "65.55.169.0/24","207.46.100.0/24","104.47.0.0/17",
    "2a01:111:f400:fc00::/54","157.55.234.0/24","157.56.112.0/24","157.56.110.0/23",
    "23.103.200.0/22","2a01:111:f400:7c00::/54","23.103.132.0/22","23.103.136.0/21",
    "23.103.198.0/23","23.103.212.0/22","40.92.0.0/14","40.107.0.0/17",
    "40.107.128.0/18","52.100.0.0/14","2a01:111:f403::/48"],
    "allowTcpPorts":"25,443",
    "expressRoute":true
  },
...

ชุดจุดสิ้นสุดเพิ่มเติมไม่รวมอยู่ในตัวอย่างนี้

ตัวอย่างการขอ URI ที่ 2: https://endpoints.office.com/endpoints/O365Worldwide?ServiceAreas=Exchange&ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

ตัวอย่างนี้จะรับจุดสิ้นสุดสำหรับอินสแตนซ์ Office 365 Worldwide สำหรับ Exchange Online และการพึ่งพาเท่านั้น

ผลลัพธ์ของตัวอย่างที่ 2 จะคล้ายกับตัวอย่างที่ 1 เว้นแต่ผลลัพธ์จะไม่รวมจุดสิ้นสุดสำหรับ SharePoint Online หรือ Skype for Business Online

วิธีการเปลี่ยนแปลงทางเว็บ

วิธีการเปลี่ยนแปลงทางเว็บจะส่งกลับการอัปเดตล่าสุดที่ได้รับการเผยแพร่แล้ว ซึ่งโดยปกติ จะเป็นการเปลี่ยนแปลงช่วงที่อยู่ IP และ URL ของเดือนก่อนหน้า

พารามิเตอร์สำหรับวิธีการเปลี่ยนแปลงทางเว็บคือ:

  • เวอร์ชัน – ต้องมีพารามิเตอร์เส้นทางของ URL เวอร์ชันที่คุณปรับใช้ในปัจจุบัน และคุณต้องการดูการเปลี่ยนแปลงตั้งแต่เวอร์ชันนั้น รูปแบบคือ YYYYMMDDNN

ผลลัพธ์จากวิธีการเปลี่ยนแปลงทางเว็บคืออาร์เรย์ของระเบียนที่แต่ละระเบียนหมายถึงการเปลี่ยนแปลงเวอร์ชันจุดสิ้นสุดที่ระบุ องค์ประกอบของแต่ละระเบียนคือ:

  • ID – ID ที่ไม่สามารถเปลี่ยนแปลงได้ของระเบียนที่เปลี่ยนแปลง จำเป็น

  • endpointSetId – ID ของระเบียนชุดจุดสิ้นสุดที่ถูกเปลี่ยนแปลง จำเป็น

  • changeDescription – ข้อความอธิบายของการเปลี่ยนแปลง จำเป็น

  • การจัดการ – อาจเป็นการเปลี่ยนแปลง การเพิ่ม หรือการเอาออกและอธิบายสิ่งที่การเปลี่ยนแปลงทำกับระเบียนชุดจุดสิ้นสุด จำเป็น

  • เวอร์ชัน – เวอร์ชันของชุดจุดสิ้นสุดที่ได้รับการเผยแพร่แล้วที่มีการเปลี่ยนแปลง หมายเลขเวอร์ชันมีรูปแบบ YYYYMMDDNN โดย NN หมายถึงหมายเลขทั่วไปที่จะเพิ่มขึ้นเมื่อจำเป็นต้องเผยแพร่หลายเวอร์ชันในหนึ่งวัน

  • ก่อนหน้า – ค่าก่อนหน้าที่ระบุรายละเอียดโครงสร้างย่อยขององค์ประกอบที่เปลี่ยนแปลงบนชุดจุดสิ้นสุด ซึ่งจะไม่รวมอยู่ในชุดจุดสิ้นสุดที่เพิ่มใหม่ รวมถึง defaultTcpPorts, allowTcpPorts, optimizeTcpPorts, defaultUdpPorts, allowUdpPorts, optimizeUdpPorts, ExpressRoute, optionalImpact

  • ปัจจุบัน - ค่าที่อัปเดตรายละเอียดโครงสร้างย่อยขององค์ประกอบที่เปลี่ยนแปลงบนชุดจุดสิ้นสุด รวมถึง defaultTcpPorts, allowTcpPorts, optimizeTcpPorts, defaultUdpPorts, allowUdpPorts, optimizeUdpPorts, ExpressRoute, optionalImpact

  • เพิ่ม – รายการที่ระบุรายละเอียดโครงสร้างย่อยที่จะเพิ่มลงในคอลเลกชันชุดจุดสิ้นสุด

    • effectiveDate – กำหนดข้อมูลเวลาที่จะให้การเพิ่มมีผลในบริการ

    • ips – รายการที่จะเพิ่มลงในอาร์เรย์ ips

    • defaultUrls- รายการที่จะเพิ่มลงในอาร์เรย์ defaultUrls

    • allowUrls- รายการที่จะเพิ่มลงในอาร์เรย์ allowUrls

    • optimizeUrls- รายการที่จะเพิ่มลงในอาร์เรย์ optimizeUrls

  • เอาออก – รายการที่ระบุรายละเอียดโครงสร้างย่อยที่จะถูกเอาออกจากชุดจุดสิ้นสุด

    • ips – รายการที่จะเอาออกจากอาร์เรย์ ips

    • defaultUrls- รายการที่จะเอาออกจากอาร์เรย์ defaultUrls

    • allowUrls- รายการที่จะเอาออกจากอาร์เรย์ allowUrls

    • optimizeUrls- รายการที่จะเอาออกจากอาร์เรย์ optimizeUrls

ตัวอย่าง:

ตัวอย่างการขอ URI ที่ 1: https://endpoints.office.com/changes/o365worldwide/0000000000?ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

ซึ่งจะขอการเปลี่ยนแปลงอินสแตนซ์บริการทั่วโลกของ Office 365 ก่อนหน้าทั้งหมด ตัวอย่างผลลัพธ์:

[
  {
    "id":2,
    "endpointSetId":118,
    "changeDescription":"Adding a OneNote endpoint",
    "disposition":"Change",
    "version":"2018030200",
    "add":{
      "effectiveDate":"20180401",
      "allowUrls":["officeapps.live.com"]
    }
  },
  {
    "id":3,
    "endpointSetId":33,
    "changeDescription":"Removing old IP prefixes",
    "disposition":"Change",
    "version":"2018031301",
    "remove":{
      "ips":["65.55.127.0/24","66.119.157.192/26","66.119.158.0/25",
        "111.221.76.128/25","111.221.77.0/26","207.46.5.0/24"]
    }
  },
  {
    "id":4,
    "endpointSetId":45,
    "changeDescription":"Removing old IP prefixes",
    "disposition":"Change",
    "version":"2018031301",
    "remove":{
      "ips":["13.78.93.8/32","40.113.87.220/32","40.114.149.220/32",
      "40.117.100.83/32","40.118.214.164/32","104.208.31.113/32"]
    }
  }
]

ตัวอย่างการขอ URI ที่ 2: https://endpoints.office.com/changes/o365worldwide?version=2018031300&ClientRequestId=b10c5ed1-bad1-445f-b386-b919946339a7

ซึ่งจะขอการเปลี่ยนแปลงตั้งแต่เวอร์ชันที่ระบุถึงอินสแตนซ์ Office 365 ทั่วโลก ตัวอย่างผลลัพธ์:

[
  {
    "id":3,
    "endpointSetId":33,
    "changeDescription":"Removing old IP prefixes",
    "disposition":"Change",
    "version":"2018031301",
    "remove":{
      "ips":["65.55.127.0/24","66.119.157.192/26","66.119.158.0/25",
      "111.221.76.128/25","111.221.77.0/26","207.46.5.0/24"]
    }
  },
  {
    "id":4,
    "endpointSetId":45,
    "changeDescription":"Removing old IP prefixes",
    "disposition":"Change",
    "version":"2018031301",
    "remove":{
      "ips":["13.78.93.8/32","40.113.87.220/32","40.114.149.220/32",
      "40.117.100.83/32","40.118.214.164/32","104.208.31.113/32"]
    }
  }
]

ตัวอย่างสคริปต์ PowerShell

นี่คือสคริปต์ PowerShell ที่คุณสามารถเรียกใช้เพื่อดูว่ามีการดำเนินการที่คุณต้องทำสำหรับข้อมูลที่อัปเดตหรือไม่ สคริปต์นี้จะตรวจสอบหมายเลขเวอร์ชันของจุดสิ้นสุดอินสแตนซ์ Office 365 Worldwide เมื่อมีการเปลี่ยนแปลง จะดาวน์โหลดจุดสิ้นสุดและตัวกรองสำหรับจุดสิ้นสุดประเภท “อนุญาต” ซึ่งยังใช้ ClientRequestId ที่ไม่ซ้ำกันในการเรียกหลายครั้งและบันทึกเวอร์ชันล่าสุดที่พบในไฟล์ชั่วคราว คุณควรเรียกสคริปต์นี้ชั่วโมงละหนึ่งครั้งเพื่อตรวจสอบการอัปเดตเวอร์ชัน

# webservice root URL
$ws = "https://endpoints.office.com"

# path where client ID and latest version number will be stored
$datapath = $Env:TEMP + "\endpoints_clientid_latestversion.txt"

# fetch client ID and version if data file exists; otherwise create new file
if (Test-Path $datapath) {
    $content = Get-Content $datapath
    $clientRequestId = $content[0]
    $lastVersion = $content[1]
}
else {
    $clientRequestId = [GUID]::NewGuid().Guid
    $lastVersion = "0000000000"
    @($clientRequestId, $lastVersion) | Out-File $datapath
}

# call version method to check the latest version, and pull new data if version number is different
$version = Invoke-RestMethod -Uri ($ws + "/version/O365Worldwide?clientRequestId=" + $clientRequestId)
if ($version.latest -gt $lastVersion) {
    Write-Host "New version of Office 365 worldwide commercial service instance endpoints detected"
    
    # write the new version number to the data file
    @($clientRequestId, $version.latest) | Out-File $datapath
    
    # invoke endpoints method to get the new data
    $endpointSets = Invoke-RestMethod -Uri ($ws + "/endpoints/O365Worldwide?clientRequestId=" + $clientRequestId)

    # filter results for Allow and Optimize endpoints, and transform these into custom objects with port and category
    $flatUrls = $endpointSets | ForEach-Object {
        $endpointSet = $_
        $allowUrls = $(if ($endpointSet.allowUrls.Count -gt 0) { $endpointSet.allowUrls } else { @() })
        $optimizeUrls = $(if ($endpointSet.optimizeUrls.Count -gt 0) { $endpointSet.optimizeUrls } else { @() })
        
        $allowUrlCustomObjects = $allowUrls | ForEach-Object {
            [PSCustomObject]@{
                category = "Allow";
                url      = $_;
                # Allow URLs should permit traffic across both Allow and Optimize ports
                tcpPorts = (($endpointSet.allowTcpPorts, $endpointSet.optimizeTcpPorts) | Where-Object { $_ -ne $null }) -join ",";
                udpPorts = (($endpointSet.allowUdpPorts, $endpointSet.optimizeUdpPorts) | Where-Object { $_ -ne $null }) -join ",";
            }
        }
        $optimizeUrlCustomObjects = $optimizeUrls | ForEach-Object {
            [PSCustomObject]@{
                category = "Optimize";
                url      = $_;
                tcpPorts = $endpointSet.optimizeTcpPorts;
                udpPorts = $endpointSet.optimizeUdpPorts;
            }
        }
        $allowUrlCustomObjects, $optimizeUrlCustomObjects
    }

    $flatIps = $endpointSets | ForEach-Object {
        $endpointSet = $_
        $ips = $(if ($endpointSet.ips.Count -gt 0) { $endpointSet.ips } else { @() })
        # IPv4 strings have dots while IPv6 strings have colons
        $ip4s = $ips | Where-Object { $_ -like '*.*' }
        
        $allowIpCustomObjects = @()
        if ($endpointSet.allowTcpPorts -or $endpointSet.allowUdpPorts) {
            $allowIpCustomObjects = $ip4s | ForEach-Object {
                [PSCustomObject]@{
                    category = "Allow";
                    ip = $_;
                    tcpPorts = $endpointSet.allowTcpPorts;
                    udpPorts = $endpointSet.allowUdpPorts;
                }
            }
        }
        $optimizeIpCustomObjects = @()
        if ($endpointSet.optimizeTcpPorts -or $endpointSet.optimizeUdpPorts) {
            $optimizeIpCustomObjects = $ip4s | ForEach-Object {
                [PSCustomObject]@{
                    category = "Optimize";
                    ip       = $_;
                    tcpPorts = $endpointSet.optimizeTcpPorts;
                    udpPorts = $endpointSet.optimizeUdpPorts;
                }                
            }
        }
        $allowIpCustomObjects, $optimizeIpCustomObjects
    }
    
    Write-Output "IPV4 Firewall IP Address Ranges"
    ($flatIps.ip | Sort-Object -Unique) -join "," | Out-String

    Write-Output "URLs for Proxy Server"
    ($flatUrls.url | Sort-Object -Unique) -join "," | Out-String

    # TODO Call Send-MailMessage with new endpoints data
}
else {
    Write-Host "Office 365 worldwide commercial service instance endpoints are up-to-date"
}

ตัวอย่างสคริปต์ Python

นี่คือสคริปต์ Python ทดสอบด้วย Python 3.6.3 บน Windows 10 ที่คุณสามารถเรียกใช้เพื่อดูว่ามีการดำเนินการที่คุณต้องทำสำหรับข้อมูลที่อัปเดตหรือไม่ สคริปต์นี้จะตรวจสอบหมายเลขเวอร์ชันของจุดสิ้นสุดอินสแตนซ์ Office 365 Worldwide เมื่อมีการเปลี่ยนแปลง จะดาวน์โหลดจุดสิ้นสุดและตัวกรองสำหรับจุดสิ้นสุดประเภท “อนุญาต” ซึ่งยังใช้ ClientRequestId ที่ไม่ซ้ำกันในการเรียกหลายครั้งและบันทึกเวอร์ชันล่าสุดที่พบในไฟล์ชั่วคราว คุณควรเรียกสคริปต์นี้ชั่วโมงละหนึ่งครั้งเพื่อตรวจสอบการอัปเดตเวอร์ชัน

import json
import os
import urllib.request
import uuid

# helper to call the webservice and parse the response
def webApiGet(methodName, instanceName, clientRequestId):
    ws = "https://endpoints.office.com"
    requestPath = ws + '/' + methodName + '/' + instanceName + '?clientRequestId=' + clientRequestId
    request = urllib.request.Request(requestPath)
    with urllib.request.urlopen(request) as response:
        return json.loads(response.read().decode())

# path where client ID and latest version number will be stored
datapath = os.environ['TEMP'] + '\endpoints_clientid_latestversion.txt'

# fetch client ID and version if data exists; otherwise create new file
if os.path.exists(datapath):
    with open(datapath, 'r') as fin:
        clientRequestId = fin.readline().strip()
        latestVersion = fin.readline().strip()
else:
    clientRequestId = str(uuid.uuid4())
    latestVersion = '0000000000'
    with open(datapath, 'w') as fout:
        fout.write(clientRequestId + '\n' + latestVersion)

# call version method to check the latest version, and pull new data if version number is different
version = webApiGet('version', 'O365Worldwide', clientRequestId)
if version['latest'] > latestVersion:
    print('New version of Office 365 worldwide commercial service instance endpoints detected')

    # write the new version number to the data file
    with open(datapath, 'w') as fout:
       fout.write(clientRequestId + '\n' + version['latest'])

    # invoke endpoints method to get the new data
    endpointSets = webApiGet('endpoints', 'O365Worldwide', clientRequestId)

    # filter results for Allow and Optimize endpoints, and transform these into tuples with port and category
    flatUrls = []
    for endpointSet in endpointSets:
        allowUrls = endpointSet['allowUrls'] if 'allowUrls' in endpointSet else []
        optimizeUrls = endpointSet['optimizeUrls'] if 'optimizeUrls' in endpointSet else []

        # Allow URLs should permit traffic across both Allow and Optimize ports
        allowTcpPorts = endpointSet['allowTcpPorts'] if 'allowTcpPorts' in endpointSet else ''
        optimizeTcpPorts = endpointSet['optimizeTcpPorts'] if 'optimizeTcpPorts' in endpointSet else ''
        allTcpPorts = ','.join([ports for ports in [allowTcpPorts, optimizeTcpPorts] if ports != ''])

        allowUdpPorts = endpointSet['allowUdpPorts'] if 'allowUdpPorts' in endpointSet else ''
        optimizeUdpPorts = endpointSet['optimizeUdpPorts'] if 'optimizeUdpPorts' in endpointSet else ''
        allUdpPorts = ','.join([ports for ports in [allowUdpPorts, optimizeUdpPorts] if ports != ''])

        flatUrls.extend([('Allow', allowUrl, allTcpPorts, allUdpPorts) for allowUrl in allowUrls])
        flatUrls.extend([('Optimize', optimizeUrl, optimizeTcpPorts, optimizeUdpPorts) for optimizeUrl in optimizeUrls])

    flatIps = []
    for endpointSet in endpointSets:
        ips = endpointSet['ips'] if 'ips' in endpointSet else []
        # IPv4 strings have dots while IPv6 strings have colons
        ip4s = [ip for ip in ips if '.' in ip]
        if 'allowTcpPorts' in endpointSet or 'allowUdpPorts' in endpointSet:
            allowTcpPorts = endpointSet['allowTcpPorts'] if 'allowTcpPorts' in endpointSet else ''
            allowUdpPorts = endpointSet['allowUdpPorts'] if 'allowUdpPorts' in endpointSet else ''
            flatIps.extend([('Allow', ip, allowTcpPorts, allowUdpPorts) for ip in ip4s])
        if 'optimizeTcpPorts' in endpointSet or 'optimizeUdpPorts' in endpointSet:
            optimizeTcpPorts = endpointSet['optimizeTcpPorts'] if 'optimizeTcpPorts' in endpointSet else ''
            optimizeUdpPorts = endpointSet['optimizeUdpPorts'] if 'optimizeUdpPorts' in endpointSet else ''
            flatIps.extend([('Optimize', ip, optimizeTcpPorts, optimizeUdpPorts) for ip in ip4s])

    print('IPv4 Firewall IP Address Ranges')
    print(','.join(sorted(set([ip for (category, ip, tcpPorts, udpPorts) in flatIps]))))

    print('URLs for Proxy Server')
    print(','.join(sorted(set([url for (category, url, tcpPorts, udpPorts) in flatUrls]))))

    # TODO send mail (e.g. with smtplib/email modules) with new endpoints data

else:
    print('Office 365 worldwide commercial service instance endpoints are up-to-date')

การกำหนดเวอร์ชันของส่วนติดต่อบริการเว็บ

การอัปเดตพารามิเตอร์หรือผลลัพธ์สำหรับวิธีการบริการเว็บเหล่านี้อาจเป็นสิ่งจำเป็นในอนาคต หลังจากเผยแพร่เวอร์ชันที่พร้อมใช้งานทั่วไปของบริการเว็บเหล่านี้แล้ว Microsoft จะทำการแจ้งเตือนล่วงหน้าอย่างสมเหตุสมผลเมื่อมีการอัปเดตไปยังบริการเว็บ เมื่อ Microsoft เชื่อว่าการอัปเดตต้องทำการเปลี่ยนแปลงไคลเอ็นต์โดยใช้บริการเว็บ Microsoft จะเก็บบริการเว็บเวอร์ชันก่อนหน้า (หนึ่งเวอร์ชัน) ที่พร้อมใช้งานไว้เป็นเวลาสิบสอง (12) เดือนหลังจากการเผยแพร่เวอร์ชันใหม่ ลูกค้าที่ไม่ทำการอัปเกรดระหว่างช่วงเวลานั้นอาจไม่สามารถเข้าถึงบริการเว็บและวิธีการได้ ลูกค้าต้องมั่นใจว่าไคลเอ็นต์ของบริการเว็บยังคงทำงานโดยไม่มีข้อผิดพลาด ถ้าทำการเปลี่ยนแปลงต่อไปนี้กับลายเซ็นส่วนติดต่อของบริการเว็บ:

  • การเพิ่มพารามิเตอร์เสริมใหม่ลงในวิธีการทางเว็บที่มีอยู่ที่ไคลเอ็นต์เก่าไม่ได้ให้ไว้และไม่ส่งผลกระทบต่อผลลัพธ์ที่ไคลเอ็นต์เก่าได้รับ

  • การเพิ่มแอตทริบิวต์ใหม่ที่มีชื่อลงในหนึ่งในรายการ REST ตอบกลับหรือคอลัมน์เพิ่มเติมลงใน CSV ตอบกลับ

  • การเพิ่มวิธีการทางเว็บใหม่ๆ ด้วยชื่อใหม่ที่ไม่ได้ใช้เรียกโดยไคลเอ็นต์เก่า

คำถามของผู้ดูแลระบบที่ถามบ่อยเกี่ยวกับการเชื่อมต่อ

คลิกลิงก์ทางด้านล่างเพื่อระบุว่าบทความมีประโยชน์หรือไม่ และส่งคำถามเพิ่มเติม เราจะตรวจสอบการคำติชมและอัปเดตคำถามที่ถามบ่อยที่สุดที่นี่

เมื่อประกาศจุดสิ้นสุดใหม่ มักจะมีบัฟเฟอร์ 30+ วันก่อนที่จะมีประสิทธิภาพ และคำร้องขอเครือข่ายจะเริ่มไปยังจุดสิ้นสุดเหล่านั้น บัฟเฟอร์นี้มีไว้เพื่อให้แน่ใจว่า ลูกค้าและคู่ค้ามีโอกาสในการอัปเดตระบบของตน การเพิ่มและการลบการเพิ่มคำนำหน้า FQDN และ IP จะประมวลผลในไฟล์ XML ในเวลาเดียวกันกับที่ประกาศ ซึ่งหมายความว่า FQDN ใหม่จะอยู่ในไฟล์ XML 30 วันก่อนที่จะใช้ เนื่องจากเราหยุดส่งคำร้องขอเครือข่ายไปยังจุดสิ้นสุดที่เรานำออกก่อนที่จะประกาศการลบ เมื่อเราเอาจุดสิ้นสุดออกจาก XML ในเวลาเดียวกันกับที่ประกาศ จุดสิ้นสุดจะไม่ได้ใช้งาน

จุดสิ้นสุด Office 365 จะถูกเผยแพร่ทุกสิ้นเดือนพร้อมกับการแจ้งเตือนทุก 30 วัน ในบางครั้งการเปลี่ยนแปลงจะเกิดขึ้นมากกว่าหนึ่งครั้งต่อเดือน หรือพร้อมกับช่วงการแจ้งเตือนที่สั้นกว่า เมื่อจุดสิ้นสุดถูกเพิ่ม วันที่มีประสิทธิภาพจะแสดงอยู่ใน ตัวดึงข้อมูล RSS คือเวลาหลังจากเครือข่ายที่ร้องขอจะถูกส่งไปยังจุดสิ้นสุด ถ้าคุณไม่คุ้นเคยกับ RSS นี่คือวิธีการ สมัครใช้งานผ่าน Outlook หรือคุณสามารถ ให้ส่งอีเมลเกี่ยวกับการอัปเดตตัวดึงข้อมูล RSS ถึงคุณ

หลังจากที่คุณสมัครใช้งานฟีด RSS คุณสามารถวิเคราะห์ข้อมูลด้วยตัวคุณเองหรือด้วยสคริปต์ ตารางต่อไปนี้อธิบายรูปแบบของฟีด RSS เพื่อให้ทำงานง่ายขึ้น

ส่วน

ส่วนที่ 1

ส่วนที่ 2

ส่วนที่ 3

ส่วนที่ 4

ส่วนที่ 5

ส่วนที่ 6

คำอธิบาย

จำนวน

วันที่หลังจากวันที่คุณสามารถคาดหวังให้ส่งคำขอไปยังจุดสิ้นสุด

คำอธิบายพื้นฐานของฟีเจอร์หรือบริการที่จำเป็นต้องใช้จุดสิ้นสุด

คุณสามารถเชื่อมต่อไปยังจุดสิ้นสุดนี้บนวงจร ExpressRoute นอกเหนือจากกับอินเทอร์เน็ตได้หรือไม่

ใช่ - คุณสามารถเชื่อมต่อกับจุดสิ้นสุดนี้ได้ทั้งบนอินเทอร์เน็ตและ ExpressRoute

ไม่ใช่ - คุณสามารถเชื่อมต่อกับจุดสิ้นสุดนี้บนอินเทอร์เน็ตเท่านั้น

FQDN ปลายทางหรือช่วง IP ที่เพิ่มหรือนำออก

ตัวอย่าง

1/

[มีผลเมื่อ xx/xx/xxx

จำเป็น: <คำอธิบาย>

ExpressRoute:

<ใช่/ไม่ใช่>

<FQDN/IP>]

สิ่งอื่นๆ ที่ควรทราบคือ ทุกรายการมีชุดตัวคั่นทั่วไป:

  • / - หลังจากนับ

  • [ - เพื่อระบุรายการสำหรับการนับ

  • . - ใช้ระหว่างแต่ละส่วนของรายการที่แตกต่างกัน

  • ], - เพื่อระบุจุดสิ้นสุดของหนึ่งรายการ

  • ]. - เมื่อระบุจุดสิ้นสุดของรายการทั้งหมด

ตำแหน่งที่ตั้งของผู้เช่า จะดีที่สุดถ้าระบุโดยใช้ แผนที่ศูนย์ข้อมูล ของเรา

ตำแหน่งที่ตั้ง peering จะอธิบายโดยละเอียดมากขึ้นใน peering กับ Microsoft

ด้วยความสัมพันธ์ peering ของ ISP มากกว่า 2500 รายทั่วโลกและ 70 แห่งที่มีอยู่ การได้รับจากเครือข่ายของคุณไปยังเครือข่ายของเราควรเป็นไปอย่างราบรื่น ไม่ใช่เรื่องเสียหายที่จะใช้เวลาสักครู่เพื่อให้แน่ใจว่า ISP ของคุณมีความสัมพันธ์ peering ของ ISP ของคุณนั้นดีที่สุด ต่อไปนี้คือตัวอย่างบางส่วน ของการส่งมอบ peering ที่ดีและไม่ดีไปยังเครือข่ายของเรา

เส้นทาง ExpressRoute ที่ได้รับการยอมรับ ถูกกำหนดโดย ช่วง IP ของ Microsof และ Office 365ชุมชน BGP ที่เฉพาะเจาะจง

เราจะเพิ่มฟีเจอร์และบริการใหม่ไปยังชุดโปรแกรม Office 365 ตามปกติ โดยขยายสภาวะการเชื่อมต่อ ถ้าคุณสมัครใช้งาน SKU E3 หรือ E5 วิธีง่ายๆ ในการตัดสินใจเกี่ยวกับรายการของจุดสิ้นสุดคือคุณต้องใช้จุดสิ้นสุดทั้งหมดเพื่อรับฟังก์ชันการทำงานแบบเต็มสำหรับชุดโปรแกรม ถ้าคุณไม่ได้สมัครใช้งาน SKU เหล่านี้ จะมีความแตกต่างของจำนวนจุดสิ้นสุดเล็กน้อย

อ่าน หลักการเชื่อมต่อเครือข่าย Office 365 เพื่อศึกษาข้อมูลเพิ่มเติมเกี่ยวกับประเภทจุดสิ้นสุด Office 365 และเพื่อทำความเข้าใจหลักการเชื่อมต่อสำหรับการจัดการการใช้งาน Office 365 อย่างปลอดภัยและการใช้งานด้วยประสิทธิภาพสูงสุด

ในรูปทางด้านล่าง คุณจะเห็นตัวอย่างส่วนของตาราง FQDN ในส่วน Office Online แถวจะเรียงตามฟีเจอร์และความแตกต่างในการเชื่อมต่อ แถวสองแถวแรกจะระบุว่า Office Online ใช้จุดสิ้นสุดที่มีเครื่องหมายรับรองความถูกต้องและข้อมูลประจำตัว Office 365 และพอร์ทัลและส่วนที่แชร์ ซึ่งเป็นปกติสำหรับบริการภายใน Office 365 ที่จะใช้บริการที่แชร์เหล่านี้ แถวที่สามจะระบุว่า คอมพิวเตอร์ไคลเอ็นต์ต้องสามารถเข้าถึง *.officeapps.live.com เพื่อใช้ Office Online และแถวที่สี่จะระบุว่า คอมพิวเตอร์ต้องสามารถเข้าถึง *.cdn.office.net เพื่อใช้ Office Online

แม้ว่าแถวสามและสี่จะจำเป็นในการใช้ Office Online แถวจะถูกแบ่งเพื่อระบุว่าปลายทางแตกต่างกัน:

  1. *.officeapps.live.com ไม่ได้แสดงแทน CDN ซึ่งหมายความว่าคำขอถึงเนมสเปซนี้จะไปยังศูนย์ข้อมูลของ Microsoft โดยตรง

  2. *.officeapps.live.com จะสามารถเข้าถึงได้บนวงจร ExpressRoute โดยใช้ Microsoft Peering

  3. ที่อยู่ IP ที่เชื่อมโยงกับ Office Online และ *.officeapps.live.com สามารถพบได้โดยไปตามลิงก์นี้

  4. *.cdn.office.net แสดงถึง CDN ที่โฮสต์โดย Akamai ซึ่งหมายความว่าคำขอไปยังเนมสเปซนี้จะไปยังศูนย์ข้อมูล Akamai

  5. *.cdn.office.net ไม่สามารถเข้าถึงได้บนวงจร ExpressRoute

  6. ที่อยู่ IP ที่เชื่อมโยงกับ Office Online และ *.cdn.office.net ไม่พร้อมใช้งาน

ภาพหน้าจอของหน้าจุดสิ้นสุด

เรามีที่อยู่ IP สำหรับเฉพาะเซิร์ฟเวอร์ Office 365 ที่คุณควรกำหนดเส้นทางไปยังอินเทอร์เน็ตหรือ ExpressRoute สิ่งนี้่ไม่ใช่รายการที่ครอบคลุมของที่อยู่ IP ทั้งหมดที่คุณจะเห็นการร้องขอเครือข่าย คุณจะเห็นการร้องขอเครือข่ายไปยัง Microsoft และที่อยู่ IP ที่บริษัทอื่นเป็นเจ้าของซึ่งยังไม่ได้เผยแพร่ ที่อยู่ IP เหล่านี้ถูกสร้างหรือจัดการแบบไดนามิกในรูปแบบที่ป้องกันไม่ให้แจ้งเตือนในเวลาที่ต้องการเมื่อมีการเปลี่ยนแปลง ถ้าไฟร์วอลล์ของคุณไม่อนุญาตให้เข้าถึงตาม FQDN สำหรับการร้องขอเครือข่ายเหล่านี้ ให้ใช้ไฟล์ PAC หรือ WPAD เพื่อจัดการการร้องขอเหล่านี้

ดู IP ที่เกี่ยวข้องกับ Office 365 ที่คุณต้องการข้อมูลเพิ่มเติมใช่ไหม

  1. ตรวจสอบถ้าที่อยู่ IP ถูกรวมอยู่ในช่วงที่เผยแพร่เป็นจำนวนมากโดยใช้ ตัวคำนวณ CIDR

  2. ตรวจสอบว่าคู่ค้าเป็นเจ้าของ IP หรือไม่ด้วย คิวรี whois ถ้า Microsoft เป็นเจ้าของ คู่ค้านั้นอาจเป็นคู่ค้าภายใน

  3. ตรวจสอบใบรับรองในเบราว์เซอร์ที่เชื่อมต่อกับที่อยู่ IP โดยใช้ HTTPS://<IP_ADDRESS> ให้ตรวจสอบโดเมนที่แสดงรายการบนใบรับรองเพื่อทำความเข้าใจว่าโดเมนใดเกี่ยวข้องกับที่อยู่ IP ถ้า Microsoft เป็นเจ้าของที่อยู่ IP และไม่ได้อยู่บนรายการที่อยู่ IP Office 365 เป็นไปได้ว่าที่อยู่ IP จะเชื่อมโยงกับ CDN ของ Microsoft เช่น MSOCDN.NET หรือโดเมน Microsoft อื่นที่ไม่มีข้อมูล IP เผยแพร่ ถ้าคุณพบโดเมนบนใบรับรองที่เราอ้างถึงรายการที่อยู่ IP โปรดแจ้งให้เราทราบ

Office 365 และบริการ Microsoft อื่นๆ ใช้บริการของบริษัทอื่นหลายอย่าง เช่น Akamai และ MarkMonitor เพื่อปรับปรุงประสบการณ์การใช้งาน Office 365 ของคุณ เพื่อให้คุณได้รับประสบการณ์ที่ดีที่สุดเท่าที่จะเป็นไปได้ เราอาจเปลี่ยนแปลงบริการเหล่านี้ในอนาคต ในการดำเนินการดังกล่าว เรามักจะเผยแพร่ระเบียน CNAME ที่ชี้ไปยังโดเมนที่เป็นของบริษัทอื่น ระเบียน A หรือที่อยู่ IP โดเมนของบริษัทอื่นอาจโฮสต์เนื้อหา เช่น CDN หรืออาจโฮสต์บริการ เช่น บริการการจัดการรับส่งข้อมูลทางภูมิศาสตร์ เมื่อคุณเห็นการเชื่อมต่อไปยังบริษัทเหล่านี้ มักจะอยู่ในรูปแบบของการเปลี่ยนเส้นทางหรือการอ้างอิง ไม่ใช่การร้องขอเริ่มต้นจากไคลเอ็นต์ ลูกค้าบางรายจำเป็นต้องตรวจสอบให้แน่ใจว่ารูปแบบการอ้างอิงและการเปลี่ยนเส้นทางนี้ได้รับอนุญาตให้ส่งผ่านโดยไม่ต้องเพิ่มรายการยาวของบริการ FQDN ที่เป็นไปได้ที่บริษัทอื่นอาจใช้อย่างชัดเจน

รายการของบริการอาจเปลี่ยนแปลงตลอดเวลา บริการบางอย่างที่ใช้งานอยู่ ได้แก่:

MarkMonitor มีการใช้งานเมื่อคุณเห็นคำขอที่มี *.nsatc.net บริการนี้ให้การป้องกันชื่อโดเมนและการตรวจสอบเพื่อป้องกันการคุกคาม

ExactTarget มีการใช้งานเมื่อคุณเห็นคำขอไปยัง *.exacttarget.com บริการนี้ให้การจัดการลิงก์อีเมลและการตรวจสอบเพื่อป้องกันการคุกคาม

Akamai มีการใช้งานเมื่อคุณเห็นคำขอที่มีหนึ่ง FQDN ต่อไปนี้ บริการนี้เสนอ DNS ทางภูมิศาสตร์และบริการเครือข่ายการนำส่งเนื้อหา

*.akadns.net
*.akam.net
*.akamai.com
*.akamai.net
*.akamaiedge.net
*.akamaihd.net
*.akamaized.net
*.edgekey.net
*.edgesuite.net

  • คุณเชื่อมต่อบริการของบริษัทอื่นเพื่อเรียกใช้บริการอินเทอร์เน็ตพื้นฐาน เช่น การค้นหา DNS และการเรียกเนื้อหา CDN คุณยังเชื่อมต่อบริการของบริษัทอื่นสำหรับการรวม เช่น การรวมวิดีโอ YouTube ในสมุดบันทึก OneNote ของคุณอีกด้วย

  • คุณเชื่อมต่อกับบริการรองที่โฮสต์และเรียกใช้โดย Microsoft เช่น โหนดขอบที่เปิดใช้งานการร้องขอเครือข่ายของคุณเพื่อเข้าเครือข่ายสากลของ Microsoft ที่ตำแหน่งอินเทอร์เน็ตที่ใกล้เคียงกับคอมพิวเตอร์ของคุณที่สุด ในฐานะเครือข่ายที่ใหญ่เป็นอันดับสามของโลก นี่จะช่วยปรับปรุงประสบการณ์การเชื่อมต่อของคุณ คุณยังเชื่อมต่อกับบริการ Microsoft Azure เช่น Azure Media Services ซึ่งถูกใช้โดยบริการ Office 365 ที่หลากหลาย

  • คุณเช่ือมต่อกับบริการ Office 365 หลัก เช่น เซิร์ฟเวอร์กล่องจดหมาย Exchange Online หรือเซิร์ฟเวอร์ Skype for Business Online ที่ซึ่งข้อมูลที่เป็นเอกลักษณ์และเป็นกรรมสิทธิ์ของคุณอยู่ คุณสามารถเชื่อมต่อกับบริการ Office 365 หลังตาม FQDN หรือที่อยู่ IP และใช้อินเทอร์เน็ตหรือวงจร ExpressRoute คุณสามารถเชื่อมต่อกับบริการของบริษัทอื่นหรือบริการรองโดยใช้ FQDN บนวงจรอินเทอร์เน็ตเท่านั้น

ไดอะแกรมต่อไปนี้จะแสดงความแตกต่างระหว่างพื้นที่บริการเหล่านี้ ในไดอะแกรมนี้ เครือข่ายภายในองค์กรของลูกค้าในด้านล่างซ้ายมีอุปกรณ์เครือข่ายหลายอย่างเพื่อช่วยในการจัดการการเชื่อมต่อเครือข่าย การกำหนดค่าอย่างนี้เป็นเรื่องปกติสำหรับลูกค้าองค์กร ถ้าเครือข่ายของคุณมีไฟร์วอลล์ระหว่างคอมพิวเตอร์ไคลเอ็นต์ของคุณและอินเทอร์เน็ตเท่านั้น ซึ่งได้รับการสนับสนุนเช่นกัน และคุณจะต้องการตรวจสอบให้แน่ใจว่าไฟร์วอลล์ของคุณสามารถสนับสนุน FQDN และอักขระตัวแทนในกฎรายการอนุญาต

อ่าน หลักการเชื่อมต่อเครือข่าย Office 365 เพื่อศึกษาข้อมูลเพิ่มเติมเกี่ยวกับประเภทจุดสิ้นสุด Office 365 และเพื่อทำความเข้าใจหลักการเชื่อมต่อสำหรับการจัดการการใช้งาน Office 365 อย่างปลอดภัยและการใช้งานด้วยประสิทธิภาพสูงสุด

แสดงจุดสิ้นสุดของเครือข่ายสามชนิดเมื่อใช้ Office 365

Office 365 เป็นชุดของบริการที่สร้างขึ้นเพื่อทำงานผ่านทางอินเทอร์เน็ต ความน่าเชื่อถือและความพร้อมใช้งานจะขึ้นอยู่กับบริการอินเทอร์เน็ตที่ได้มาตราฐานจำนวนมากที่พร้อมใช้งาน ตัวอย่าง บริการอินเทอร์เน็ตที่ได้มาตราฐาน เช่น DNS, CRL และ CDN ต้องสามารถเข้าถึงได้เพื่อใช้ Office 365 เช่นเดียวกับที่ต้องสามารถเข้าถึงได้เพื่อใช้บริการอินเทอร์เน็ตที่ทันสมัยที่สุด

นอกเหนือจากบริการอินเทอร์เน็ตพื้นฐานเหล่านี้ ยังมีบริการของบริษัทอื่นที่ถูกใช้เพื่อการทำงานเท่านั้น ตัวอย่าง การใช้ Giphy.com ภายในทีม Microsoft ช่วยให้ลูกค้ารวม GIF ภายในทีมได้อย่างราบรื่น ในทำนองเดียวกัน YouTube และ Flickr เป็นบริการชองบริษัทอื่นที่ถูกใช้เพื่อรวมวิดีโอและรูปลงในไคลเอ็นต์ Office จากอินเทอร์เน็ตได้อย่างราบรื่น เมื่อสิ่งเหล่านี้จำเป็นสำหรับการรวม จะถูกทำเครื่องหมายเป็นตัวเลือกในบทความจุดสิ้นสุดของ Office 365 ซึ่งหมายความว่าฟังก์ชันการทำงานหลักของบริการจะยังคงทำงานถ้าจุดสิ้นสุดไม่สามารถเข้าถึงได้

ถ้าคุณกำลังพยายามใช้ Office 365 และกำลังค้นหาบริการของบริษัทอื่นที่ไม่สามารถเข้าถึงได้ คุณจะต้อง ตรวจสอบให้แน่ใจว่า FQDN ทั้งหมดที่ทำเครื่องหมายว่าจำเป็นหรือเป็นตัวเลือกในบทความนี้ได้รับอนุญาตผ่านพร็อกซีและไฟร์วอลล์

บริการรองเป็นบริการ Microsoft ที่ไม่อยู่ในการควบคุมของ Office 365 มีบางอย่างเหมือนเครือข่ายขอบ Azure Media Services และ Azure Content Delivery Networks จำเป็นต้องมีสิ่งเหล่านี้เพื่อใช้ Office 365 และเพื่อให้สามารถเข้าถึงได้

ถ้าคุณกำลังพยายามใช้ Office 365 และกำลังค้นหาบริการของบริษัทอื่นที่ไม่สามารถเข้าถึงได้ คุณจะต้อง ตรวจสอบให้แน่ใจว่า FQDN ทั้งหมดที่ทำเครื่องหมายว่าจำเป็นหรือเป็นตัวเลือกในบทความนี้ได้รับอนุญาตผ่านพร็อกซีและไฟร์วอลล์

ควรทำการจำกัดการเข้าถึงบริการผู้บริโภคของเราด้วยความเสี่ยงของคุณเอง วิธีเดียวที่น่าเชื่อถือในการบล็อกบริการผู้บริโภคคือการจำกัดการเข้าถึง FQDN login.live.com FQDN นี้ถูกใช้โดยชุดหลักของบริการที่รวมบริการที่ไม่ใช่ผู้บริโภค เช่น MSDN, TechNet และอื่นๆ การจำกัดการเข้าถึง FQDN นี้อาจส่งผลให้จำเป็นต้องมีข้อยกเว้นสำหรับกฎของการร้องขอเครือข่ายที่เกี่ยวข้องกับบริการเหล่านี้

คำนึงว่าการบล็อกการเข้าถึงบริการผู้บริโภค Microsoft เพียงอย่างเดียวจะไม่สามารถป้องกันไม่ให้บุคคลอื่นบนเครือข่ายของคุณกรองข้อมูลโดยใช้ผู้เช่า Office 365 หรือบริการอื่น

หัวข้อที่เกี่ยวข้อง

ช่วง IP ของศูนย์ข้อมูล Microsoft Azure
พื้นที่ IP สาธารณะของ Microsoft
ความต้องการโครงสร้างเครือข่ายพื้นฐานสำหรับ Microsoft Intune
Power BI และ ExpressRoute
URL และช่วงที่อยู่ IP ของ Office 365
การจัดการ ExpressRoute สำหรับการเชื่อมต่อ Office 365
หลักการเชื่อมต่อเครือข่าย Office 365

ขยายทักษะ Office ของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×