X
x1
DRb server trying to yield data to the fully qualified domain name of
the client?
Today, I ran into an issue with a host(windows client) that had an
improperly configured domain name suffix.
Its typical fqdn would be client1.ruby-lang.org but because of poor
network administration, it was changed to client1.doesentexist.com.
Although client1 and server1 can still communicate fine because of Net
BIOS and arp (on the same subnet), the DRb server tries to yield the
objects back to the client's fully qualified name... If it fails, it
bombs out with a drbconnerr. I guess I'm just wondering why it doesn't
attempt alternate methods?
If I don't use the yield / callback it connects and returns results
fine.. The issue only presents itself when using yields and bombs out
when the server tries to return the object to the clients FQDN..
Is this a security feature or what? I realize I cant blame drb for my
network but I can say that other applications were unaffected (at
least in an obvious way).
thx for any input.
=3D=3D=3D=3D clnt.rb =3D=3D=3D=3D
require 'drb'
DRb.start_service()
obj =3D DRbObject.new_with_uri('druby://:22337')
obj.foo do |i|
p i
end
=3D=3D=3D=3D=3D=3D=3D=3D
the client?
Today, I ran into an issue with a host(windows client) that had an
improperly configured domain name suffix.
Its typical fqdn would be client1.ruby-lang.org but because of poor
network administration, it was changed to client1.doesentexist.com.
Although client1 and server1 can still communicate fine because of Net
BIOS and arp (on the same subnet), the DRb server tries to yield the
objects back to the client's fully qualified name... If it fails, it
bombs out with a drbconnerr. I guess I'm just wondering why it doesn't
attempt alternate methods?
If I don't use the yield / callback it connects and returns results
fine.. The issue only presents itself when using yields and bombs out
when the server tries to return the object to the clients FQDN..
Is this a security feature or what? I realize I cant blame drb for my
network but I can say that other applications were unaffected (at
least in an obvious way).
thx for any input.
=3D=3D=3D=3D clnt.rb =3D=3D=3D=3D
require 'drb'
DRb.start_service()
obj =3D DRbObject.new_with_uri('druby://:22337')
obj.foo do |i|
p i
end
=3D=3D=3D=3D=3D=3D=3D=3D