So I am starting to create and plan out an intranet sight for my company. One aspect that I'm looking to get info on is about authentication, we want to be able to access it within our network openly. Outside of our network we want to be able to login with Office 365 credentials (we have SharePoint on Office365). I have looked into form authentication, and have also looked into setting up SharePoint in an Azure instance and using IP filtering. Has anyone done this or know how to start doing this?
There is only a single method of authentication to Office 365 (or SharePoint Online, however you'd like to look at it). You're either using federated using ADFS, Okta, Ping, etc. or using 'managed' accounts (where Azure AD sync is in place, but you're not using federation). There is no way to do one or the other depending on location.
I typically suggest that clients use Azure IaaS (or AWS, whichever your platform of choice is) to host Web Application Proxy, ADFS 3.0, and two Domain Controllers with a site-to-site VPN tunnel to their internal network. These are usually smaller customers, but this way if the Internet connectivity to their data center becomes unavailable, they're still able to log in from outside of the office thanks to ADFS running in Azure. We also use the Azure Resource Model to make sure each WAP/ADFS/DC is on a separate fault/update domain, as well as for easier management should they upgrade Windows Server down the road (just delete the Resource Group to axe all related resources).