How to make Virola server app publicly accessible on macOS
When you install Virola corporate messenger server app on your macOS server, it is necessary to make it publicly accessible so that other users within your network or from any other location could connect to their Virola client apps. When launching Virola server, you need to provide port and host which will be used for connection. From this article you will learn how to choose host and port, how to make Virola server accessible within your intranet and how to setup ports forwarding to make it accessible to the public Internet.
How to make Virola server app accessible in your intranet
After installing Virola server application on your macOS, you can easily make it accessible in your internal network. The procedure is similar for different macOS versions but the details can differ. The following instructions are for macOS Ventura:
1. Determine your machine private internal IP address
First of all, you need to determine the private IP address of the machine you are running the Virola server on. This is the IP assigned to your machine by your network router. There are two ways to get it:
-
Follow Applications / System Settings / Network and
select there the network you are connected to. E.g. if your mac
machine is connected to Wi-Fi, click the connected Wi-Fi "Details" button and
you will see the machine's IP in the IP address field.
Example: IP address of the machine on the following screenshot is 192.168.0.15 -
Another way is to get the IP through Terminal. Follow
Applications / Utilities and launch
the Terminal. Then run
ipconfig getifaddr en0
command if your mac is connected to Wi-Fi network oripconfig getifaddr en1
for Ethernet connection. Alternatively, your can runifconfig
command - the IP address of your machine will be displayed in "en0" or "en1" section.
2. Launch Virola server
Then you need to launch Virola server with the private IP address of your machine and a port number. Use the following command:
virola-server --listen 192.168.0.15:8888 --storage-dir ./
Where:
-
192.168.0.15
— is the private IP address of your computer in your internal network; -
8888
— is a port Virola server app will be listening on;
You can assign any unused port to Virola server. To check which ports are occupied on your mac, use the following command in Terminal:
sudo lsof -i -n | grep TCP
3. Allow incoming connections to your Virola server
Once you have executed virola-server
command, you will get the Firewall
prompt where you will need to allow Virola server app to accept
incoming network connections:
After you allow incoming network connections for Virola server, it will become available and users from your local network will be able to connect to it with their Virola client apps. If you deny incoming network connections, Virola server won't be be available for connections from your local network and you'll need to configure the permission manually.
As Virola admin you can use the following details for the first login into Virola client:- Server host: IP address that you found on step 1
- Server port: port number that you set on step 2
- Username: admin
- Password: admin
Example:
- Server host: 192.168.0.15
- Server port: 8888
- Username: admin
- Password: admin
After creating profiles for your users in Virola, you can provide them their connection details to log into Virola client.
Possible issues
If for some reason Virola server cannot connect, you need to check whether the port you use is occupied. You can do this with help of Terminal, where you need to run the following command:
netstat -an | grep LISTEN
It will show the list of all ports listening on your macOS:
If client applications start getting "Server unreachable" message when connecting to Virola server, you need to check if your server is still running and if your machine private IP is not changed. To prevent changing your machine private IP, we recommend to reserve a static private IP for it in your router settings.
How to make Virola server app accessible to the public Internet
1. Get a static public IP address for your router
Most Internet Service Providers (ISPs) distribute IP addresses to clients' routers dynamically and can change them at any moment. But for a stable access to your Virola server you will need a permanent IP address that you can share with your server users as the Host Name.
The best way to obtain a static public IP address is to purchase this service from your ISP. To find out what your current public IP is, you can use "What is my IP address" service.
2. Configure port forwarding in your router settings
Port forwarding (or port mapping) is a technique that allows to give external devices access to services running on computers in private networks. For this, external port is mapped to a combination of an internal IP address and port in a router settings.
So, port forwarding will make your Virola server running on your local computer available from anywhere via your router public IP address and a port you choose.
There is a number of possible names for port forwarding in routers' settings: Port Range Forwarding, Apps & Gaming, Virtual Servers, etc.
When setting up port forwarding, you need to specify
- your machine private internal IP address or name in your local network
- the port you specified when running Virola server
- and the external port via which Virola server will be available from the Internet
Virola server app uses both TCP and UDP protocols. Thus, if you would like your Virola users to have access to all Virola features, including video and audio meetings, you need to setup port forwarding on your router for both these protocols.
3. Reserve a static private IP address for your machine
Private internal IP addresses for intranet devices are distributed by routers and usually the distribution is dynamic. So, one day your machine may have private IP 192.168.0.15 and after restart it may change to 192.168.0.16. This means that port forwarding rules that you set up today may stop working tomorrow. IP reservation (or DHCP reservation if you do this via your router DHCP settings) solves this problem. Thus, to make your Virola sever access stable, we strongly recommend to reserve a static private IP for your machine.
Both port forwarding and IP reservation are configured in a router settings. Here is a list of most widely used routers with links to instructions for port forwarding configuration and DHCP reservation:
- D-Link port forwarding and DHCP reservation
- Netgear port forwarding and DHCP reservation
- Linksys and DHCP reservation
- ASUS port forwarding and DHCP reservation
- DrayTek port forwarding and DHCP reservation
- Zyxel port forwarding and DHCP reservation
- TP-Link port forwarding and DHCP reservation
- TRENDent port forwarding and DHCP reservation
- Belkin port forwarding and DHCP reservation
4. Make sure that Open Virola server port in open macOS Firewall
When you first started Virola server, you were asked for a permission for Virola to accept incoming network connections. If you granted this permission, then you can skip this step.
If you denied incoming network connections, then you now need to open Virola port with TCP and UDP protocols in Firewall on your macOS machine manually. TCP is used for messages exchange and UDP is used for audio and video broadcasting. Thus, ensuring that those connections are not blocked is important for smooth Virola performance.
MacOS Firewall does not manage ports individually, but on a per-application basis. To open Virola server port on macOS Ventura do the following:
- Follow System Settings / Network.
-
Add an application there by clicking "+" below the list of
apps. There are two available options in the Firewall:
- Allow incoming connections
- Block incoming connections
There are other settings for macOS Firewall, please be careful with them:
- Block all incoming connections. This blocks everything except basic Internet services, such as DHCP, Bonjour, and IPSec. After selecting this option, all apps which need to access Internet will stop working.
- Automatically allow downloaded signed software to receive incoming connections. This option is enabled by default. If an application has a valid certificate the firewall allows incoming connections. Otherwise, you will get a prompt where you can choose whether to allow connection or block.
- Enable stealth mode. This prevents other people (or computers on a local network) from discovering your mac computer. It will no longer respond to ping requests.
We provided your with the basic information for making your Virola server app internally and publicly accessible. However, there can be more complicated network configurations and in such cases it is better to let technician with required skills configure everything within your network.