I am trying to script out the registration of a tentacle using an ip address of the octopus server.
$environment = "New"
$role = "New"
$apiKey = "API-XXXXXXXXXXXXXXXX"
$octopusServerUrl = "http://xxx.xxx.xx.xx"
$tentacleIp = $
tentacle register-with --instance "Tentacle" --server $octopusServerUrl --environment $environment --role $role --name $env:COMPUTERNAME --publicHostName $tentacleIp --apiKey $apiKey --comms-style TentaclePassive --console
Unfortunately the using the IP causes the registration to time out.
If I add an entry to the host file mapping a domain to the IP, and then use the domain name, the registration works.
Is there some way to pass the octopus server’s ip to the register-with command? Having to script out edits to the host file is less than ideal.
Thanks for reaching out. I tested this really quickly and it worked both the domain name and the IP (see attached screenshot).
I discussed this with the team and we couldn’t think of another reason other than a weird network rule blocking the traffic using the raw IP. Perhaps you should get in touch with your network admins and see if they can trace the packages of that command and see what they find?
forgot to attach the screenshot
There are some network configurations that are at play here. Our octopus server is in a trusted zone, while the web servers are in a DMZ. To allow them to connect we are using a NAT to map the dmz ip to a trusted one.
Using wireshark to see what kind of traffic the tentacle was generating when using the ip produced zero results (i.e. there was no traffic).
The machine could connect to octopus using the ip in the browser. It could also connect using the tentacle if we added a mapping to the host file.
I also added an ip binding in octopus.
I also could not add a port to the IP when using tentacle.exe
Which version do you see on Right click
Tentacle.exe -> Properties -> Details -> File Version? I wanna try this from the same version as you.
Also - Do you see any traffic in Wireshark when
tentacle.exe using the server domain name?
Tentacle Version : 3.4.9 (3.4.9+Branch.master.Sha.91842df9b9694b6e7dab6d2b806f05ce636b6ebb)
When using the dns i see the request take a trip to googles dns server and return a miss on the resolution.
Also, it turns out that using the IP does generate traffic on wireshark. I must have had the filter setup wrong. But the request eventually times out.
Let me know if I’m understanding correctly:
Using the DNS doesn’t resolve the name properly. So it doesn’t register the machine in Octopus, right?
Using the IP generates traffic in Wireshark, but it times out, so it doesn’t register the machine?
That being said, I added a binding to localhost in the octopus server, and now the IP works.
Since this works I am happy enough since I do not need to script out an edit to the host file.
If you would like to continue to investigate I am happy to provide whatever information you need.
I’m afraid we can’t think of any other troubleshooting steps at this point. We’ve got tons of users using that
register-with command daily, and this is the first time we see it fail for both DNS and IP. It definitely looks like an environmental issue on that machine/network that’s beyond the scope of Octopus. I’m glad to hear you found a workaround though.
We’ll stay alert to see if other users run into a similar issue and redirect them to this thread in that case to continue the investigation.
This issue has been closed due to inactivity. If you encounter the same or a similar issue and require help, please open a new discussion (if we asked for logs or extra details in this thread, consider including them in the new thread). If you are the creator of this thread and believe it should not be closed let us know via our support email.