Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / .NET Framework / Remoting / June 2004

Tip: Looking for answers? Try searching our database.

.net remoting over internet

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Gaetano Lazzo - 29 Jun 2004 15:44 GMT
Hi,
I'm a novice in remoting, and I've a problem trying to make it work over
internet.

I have a SAO (Singleton) named CampusDataAccessLoader. I want clients to
access this object in order to use it as a object-maker for another class
(CampusDataAccess). I don't need callback functions.
When I work in the LAN, it's all OK.
Well, the server code is the simply:

BinaryClientFormatterSinkProvider clientProvider = new
BinaryClientFormatterSinkProvider();
BinaryServerFormatterSinkProvider serverProvider = new
BinaryServerFormatterSinkProvider();
IDictionary props = new Hashtable();
props["port"] = 8989;
props["name"] = System.Guid.NewGuid().ToString();;
HttpChannel chan = new HttpChannel(props,clientProvider, serverProvider);
ChannelServices.RegisterChannel(chan);
RemotingConfiguration.RegisterWellKnownServiceType(
typeof(CampusDataAccessLoader), "CampusDataAccessLoader",
WellKnownObjectMode.Singleton);
While the client code is the simply:
BinaryClientFormatterSinkProvider clientProvider = new
BinaryClientFormatterSinkProvider();
BinaryServerFormatterSinkProvider serverProvider = new
BinaryServerFormatterSinkProvider();
IDictionary props = new Hashtable();
props["port"] = 8989;
props["name"] = System.Guid.NewGuid().ToString();
HttpChannel chan = new HttpChannel(props,clientProvider,serverProvider);
ChannelServices.RegisterChannel(chan);

Then the client gets the object with this instruction
DAL = (CampusDataAccessLoader)
Activator.GetObject(typeof(CampusDataAccessLoader),"Http://"+remserver+
":8989"+
"/CampusDataAccessLoader");
where remserver is the IP of the remote server

I'm using port 8989 because I've read it's firewall-friendly... but it seems
not !
I've a firewall on a server, and I've made a NAT on port 8989...
what I'm missing?
The error I'm getting is something like : System.Net.WebException:Underlying
connection closed. Impossible to connect to the remote server.
(The real message is in italian and is "Connessione sottostante chiusa:
Impossibile effettuare la connessione al server remoto").

But if i work on local network it works! So I suppose It's a firewall
problem...
Can some one help me?

Many thanks in advance!
Gaetano Lazzo
Sunny - 29 Jun 2004 15:53 GMT
Hi,
at server channel set use machine name property to be the external ip to
which client connects.

Sunny

> Hi,
> I'm a novice in remoting, and I've a problem trying to make it work over
[quoted text clipped - 51 lines]
> Many thanks in advance!
> Gaetano Lazzo
Gaetano Lazzo - 29 Jun 2004 16:11 GMT
Thanks,
Could You tell me how please?
I'm really novice!!

> Hi,
> at server channel set use machine name property to be the external ip to
[quoted text clipped - 57 lines]
> > Many thanks in advance!
> > Gaetano Lazzo
Sunny - 29 Jun 2004 16:37 GMT
Hi,

look inline your code:

> > > BinaryClientFormatterSinkProvider clientProvider = new
> > > BinaryClientFormatterSinkProvider();
[quoted text clipped - 3 lines]
> > > props["port"] = 8989;
> > > props["name"] = System.Guid.NewGuid().ToString();;

//put there the external IP of your firewall
props["machineName"] = "xxx.xxx.xxx.xxx";

//this makes the channel to use the machine name we sppecified
props["useIpAddress"] = false;

> > > HttpChannel chan = new HttpChannel(props,clientProvider,
> serverProvider);
> > > ChannelServices.RegisterChannel(chan);
.....
all other is the same

Hope that helps

Sunny
Gaetano Lazzo - 30 Jun 2004 08:51 GMT
It worked!!!!!

Many thanks!!

Gaetano Lazzo

> Hi,
>
[quoted text clipped - 23 lines]
>
> Sunny
Allen Anderson - 29 Jun 2004 17:18 GMT
Sunny's answer is good advice, let me just add a little more to it if
you want to use the object from inside and outside your firewall.
Check this article I wrote on the subject out.

http://www.glacialcomponents.com/ArticleDetail.aspx?articleID=CAOMN

Allen Anderson
http://www.glacialcomponents.com
mailto: allen@put my website base here.com

>Hi,
>I'm a novice in remoting, and I've a problem trying to make it work over
[quoted text clipped - 51 lines]
>Many thanks in advance!
>Gaetano Lazzo

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.