Looking for some feedback/ information on trying to allow users to register a new account using Spark (2.9.4) connecting to OpenFire (4.6.3). I have done a lot of research the past few days and have noticed a lot of people posting of forums not entirely knowing how XMPP works with DNS and setting improper SRV records or not having DNS records set up at all. I hope I’m not creating another topic about an issue that someone else has already addressed.
A quick backstory of how my environment looks before I get to the issue I am having: I have an enclosed network with a few different sites (all using Windows). Some sites have their own OpenFire server that on-site administrators manage and use DNS Federation to connect to a “Hub” server. Users are able to log in and chat across servers. SRV records and firewall policies are properly created and things are working as intended for the most part. I have Inband Account Registration enabled to allow users to create accounts without having to go through lengthy administrative processes. I am happy to provide more detail if necessary.
Issue: A few sites cannot access DNS servers (due to restrictions on their network) and primarily use XMPP chat to communicate to other sites. The only way users at these sites can connect to my OpenFire server is by IP and not by DNS. If an account already exists on the server, Spark clients have no issues logging into the server by IP. If they try and register an account they receive an error stating “Account could not be created”. I used Wireshark to see what was happening between server-client and saw the client send XMPP packet [IQ xmlns=‘jabber:iq:register"] to the server. Server responds with [type="modify’ code=“400” condition=‘bad-request’]. This is not a problem with clients that can query DNS. In Spark I have turned off the setting for “Automatically discover host and port” and input the server IP and port 5222. I also tried adding the server IP/Hostname in local Hostfile to see if it would use that in place of DNS but it did not work.
From what I have read on the forums it is HIGHLY recommended to use DNS for logon (which I agree) but sadly for a few of my remote sites, it is not an option. I feel I am on a wild goose chase with this issue and it may be that Spark just cant support my specific requirements. If anybody has some tips on getting account registration to work with spark via IP I would appreciate it.