Rinda not working through the network - what's wrong?

Hello,

I have host A (IP 192.168.1.3) and host B (IP 192.168.1.5), both of them Linux
(KUbuntu 5.10) with no firewall. I am running ruby 1.8.4, installed from
KUbuntu packages.

If I run ringserver.rb, server.rb and client.rb in the same host, it works
fine. (Source code is at the end of the message)

But if I go for the interesting case, i. e. running ringserver.rb (taken
straight from segment7.net) and server.rb in host A and client.rb in host B,
it fails with a RingNotFound exception.

What am I doing wrong? Should I specify a port for Rinda? (I think the
broadcast list should be enough)

=== ringserver.rb ===
#!/usr/bin/env ruby -w

ยทยทยท

#
# Start this one first.
#
# ringserver.rb
# Rinda RingServer

require 'rinda/ring'
require 'rinda/tuplespace'

# start DRb
DRb.start_service

# Create a TupleSpace to hold named services, and start running
Rinda::RingServer.new Rinda::TupleSpace.new

# Wait until the user explicitly kills the server.
DRb.thread.join

=== server.rb ===
#!/usr/bin/env ruby -w
#
require 'drb'
require 'rinda/ring'

class TestServer
  include DRbUndumped
  def add(*args)
    args.inject{ |n,v| n + v }
  end
end

server = TestServer.new
DRb.start_service('druby://:9000', server)

provider = Rinda::RingProvider.new :TestServer, server, "Test Server"
provider.provide

DRb.thread.join

==============

=== client.rb ===
#!/usr/bin/env ruby -w
#
require 'drb'
require 'rinda/ring'

DRb.start_service()

ringfinger = Rinda::RingFinger.new(['192.168.1.3','192.168.1.5'])
@ringserver = ringfinger.lookup_ring_any()

obj_tuple = @ringserver.take([:name, nil, nil, nil])
obj = obj_tuple[2]

puts "Sum is: #{obj.add(1,2,3,4)}"

Thank you.

- --
Pau Garcia i Quiles
http://www.elpauer.org
(Due to the amount of work, I usually need 10 days to answer)