Hi,
we are trying to setup an on-premise shared environment for multiple NAV 2016 instances. So we have two servers:
1) Windows Server with SQL Server installation, internal server name is "navsql.company.local", the SQL Server is published and accessible from outside with the address: "navsql.company.com,52016".
2) Windows Server for multiple NAV 2016 instances. Servername in our domain "nav2016.company.local". Server is published under "nav2016.company.com"
Both servers are in the same Domain (company.local).
We want to give the access to this servers to severeals customers and NAV partners, but they have to connect from outside of our network/domain. They will not get any RDP access, all tools needs to be installed locally on user machine.
The SQL Server will host all SQL Databases. We will grant the access to a specific Database using SQL User Authentication. The connection from outside is working fine, I can connect from SSMS and from the Development Environment.
The NAV Server will host all NAV Instances. And is also accessible from outside. I can connect from RTC and WebClient. The NAV Instance is pointing to the external SQL Server Name:
<add key="DatabaseServer" value="navsql.company.com,52016" />
From user perspective everything is working fine.
The problem starts when I try to make some customization in the database using the Development Environment (DE) installed on my local machine (outside our network). The DE don't recognize the NAV Server Instance name properly. I'm outside of our domain, I open the DE and connect to the SQL Server using "navsq.company.com,52016". I go to Database Information and on the Instance List I see my NAV instance but the Server Name is "nav2016.company.local" but it should be "nav2016.company.com". Even when I put the "nav2016.company.com" in the DE options it gives me information that no instance could be found on this server. The strange thing is: to get a list of running NAV instances DE need to connect to the NAV Server. I'm outside the domain and network, so I'm pretty sure DE is connecting to the server using the correct name"nav2016.getsix.com". But on the list of all instances what Dev.Env. is receiving I see wrong server name "nav2016.getsix.local". Of course I can't use this name because the DE won't connect to this server name from outside.
I'm pretty sure we're missing some small setting, but no idea where to search. Generally this would be same scenario as using Azure VM for NAV 2016 + Azure SQL. In this scenario it should be also possible to connect from DE installed on local Laptop and do some development.
[EDIT]
I found out that the list of available instances is coming from the Table [Server Instance]. Each time a NAV Instance is started a new record is created in this table with the local server name (in my case "nav2016.company.local"). I can understand this, because from where the NAV Instance should know that the whole server is published under different name. Maybe there is some setting for this?
I tried to hack this and I updated the Server Name in the [Server Instance], now I see correct server name in the Development Environment, but when I try to save som customised table I get connection error. Don't know why.
0
Answers
What are your settings in DE Tools-Options?
when I put "nav2016.company.com" as "Server Name" I get error "No running instances found". Somehow DE is expecting "nav2016.company.local" as ServerName, but this will not work from outside.
I have to ask. What is the setting for Server Port in DE Tools-Options?
Management Port: 7045