[Solved] Problem with external connections to ejabberd server

I have an Ubuntu 10.04 server, running ejabberd 2.1.5. I installed it via apt-get ejabberd. The only options I changed in the ejabberd.cfg are the admin user and the host which is {hosts, ["mediabox"]}.

The host name of the server itself is also mediabox (avahi advertises it as mediabox.local). LAN users can connect fine, user@mediabox, but I cannot get any external connections to work. I used to run openfire on the same server and forwarded port 5222 to its IP address 192.168.1.77 and this worked. I have a dynamic dns account set up to point domain.dyndns.tv to my external IP address also.

my /etc/hosts file currently reads

127.0.0.1 localhost
127.0.1.1 mediabox

I have tried adding

192.168.1.77 mediabox
mediabox 192.168.1.77

but no combination of names in the hosts file works.

Any help would be much appreciated.

Also when I've tried connecting with Pidgin, this is the output from the debug window (addresses and IPs changed)

(21:42:05) autorecon: do_signon called
(21:42:05) autorecon: calling purple_account_connect
(21:42:05) account: Connecting to account user@domain.dyndns.tv/.
(21:42:05) connection: Connecting. gc = 04E64670
(21:42:05) dnssrv: querying SRV record for domain.dyndns.tv: _xmpp-client._tcp.domain.dyndns.tv
(21:42:05) autorecon: done calling purple_account_connect
(21:42:05) dnssrv: Couldn't look up SRV record. DNS name does not exist. (9003).
(21:42:05) dnsquery: Performing DNS lookup for domain.dyndns.tv
(21:42:05) dnsquery: IP resolved for domain.dyndns.tv
(21:42:05) proxy: Attempting connection to 12.34.56.78
(21:42:05) proxy: Connecting to domain.dyndns.tv:5222 with no proxy
(21:42:05) proxy: Connection in progress
(21:42:05) proxy: Connecting to domain.dyndns.tv:5222.
(21:42:05) proxy: Connected to domain.dyndns.tv:5222.
(21:42:05) jabber: Sending (user@domain.dyndns.tv/): <?xml version='1.0' ?>
(21:42:05) jabber: Sending (user@domain.dyndns.tv/): <stream:stream to='domain.dyndns.tv' xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' version='1.0'>
(21:42:05) jabber: Recv (240): <?xml version='1.0'?><stream:stream xmlns='jabber:client' xmlns:stream='http://etherx.jabber.org/streams' id='2659608196' from='mediabox' xml:lang='en'><stream:error><host-unknown xmlns='urn:ietf:params:xml:ns:xmpp-streams'/></stream:error>
(21:42:05) connection: Connection error on 04E64670 (reason: 0 description: Host Unknown)
(21:42:05) account: Disconnecting account user@domain.dyndns.tv/ (01FFE510)
(21:42:05) connection: Disconnecting connection 04E64670
(21:42:05) jabber: Sending (user@domain.dyndns.tv/): </stream:stream>
(21:42:05) connection: Destroying connection 04E64670

I sorted it. I'm an idiot.

I sorted it. I'm an idiot.

Changed the server name to the domain.dyndns.tv and it works.

I can't believe I didn't try doing that before. So far ejabberd has been much better than openfire for me. Thanks!

hi. may i ask you? i

hi. may i ask you?
i installed a ejabberd too on my centos server. And i use my subdomain for the host.. it works fine at local network but i can't login from internet.. but, for admin web page i can open it on internet..
do you have any advice for me? which step might i miss??
thank.. and sorry i cannot speak english well :)

Syndicate content