Can't access my ubuntu 16 from outside my network

The problem is that you use on both servers port 80 and your port 80 from your router is forwarded to your macbook pro.

You have following options:

  1. to get another public IP address and place your ubuntu server in the new subnet and forward port 80 to your ubuntu server

  2. Combine both macbook pro and ubuntu machine sites into one server installation. You can configure Web server Apache to respond to two domain names on the same ip address you are using now. The apache will react to the domain typed in the address bar and respond with the respective site. In this case you will need to forward the port 80 to your new combined server.

  3. For ubuntu server use another port - for instance 8080 and forward this port to your ubuntu machine. You can also forward external port 8080 to the port 80 of your ubuntu server. The external port 80 would be forwarded to port 80 of your macbook pro.

  4. Forward port 80 to your ubuntu server and in Apache setup for a second domain a reverse proxy, which will forward requests for the macbook site to your macbook pro.

The question is whether the sites will be publicly available to anyone or will be used just by you. For the publicly available sites you have to take option 1, option 2 or option 4, for the sites accessed by you the option No. 3 is the most viable.