Groups | Blog | Home
all groups > dotnet remoting > march 2006 >

dotnet remoting : How to restrict remote client by IP address


hulinning
3/16/2006 1:26:17 PM
Hi all,
I would like to know if there is a simple way to tell who is connect to my
remote server.


I would like to limit remote client applicatiion using client' s IP Address.


Piyush Daiya
3/16/2006 4:34:17 PM
Hi,

Well you would have to write a custom sink for your application which would
get IP address from header.
There was a post earlier describing it --->
http://www.dotnet247.com/247reference/msgs/32/164918.aspx


HTH,

Piyush

[quoted text, click to view]

Mehdi
3/17/2006 4:58:08 PM
[quoted text, click to view]

In addition to the other answer, you could also use the commercial Genuine
Channels library (http://genuinechannels.com/) which will allow you to do
that in just one line of code. I am not related in any way to this company
but given its low price and the whole lot of very useful functionnalities
that it provides, i believe that Genuine Channels really is a must have for
any serious .NET remoting-based application (just the opinion of a happy
hulinning
5/25/2006 4:56:01 AM
Thanks for all comments.

To Mehdi,
GenuineChannels seems very good library for .NET remoting developers.
Have you tried it before? any problem ? how do they support us?

I would like to recommend this to my boss in addition to my current native
MS .net remoting.

Thanks

[quoted text, click to view]
Mehdi
5/25/2006 3:51:30 PM
[quoted text, click to view]

We've been using Genuine Channels for 3 years now and i only have good
things to say about it. On top of supporting bi-directional channels, it's
got plenty of really useful features such as authentication, encryption,
compression, support for client sessions (just like ASP .NET), a simple
framework to allow servers to send events back to all or only some of the
connected clients, a whole set of events that you can handle to monitor
server disconnections, server restarts, client connections... Very good
documentation. Free and excellent support too either via their online
forums or by emails. They're always answering whithin 1 (or max 2) working
days and always provide detailled explanations with sample code if
necessary (you can have a look at their online forum actually, there is one
forum reserved for customers but all the other ones are open to the
public). I honestly woudn't want to work on any serious .NET Remoting based
hulinning
5/26/2006 6:21:02 AM
Thanks for replying to my question.

I would like to know how much effort you need to convert native MS .NET
remoting to GenuineChannels .NET Remoting?

Currently, client applications use interfaces to connect to remote host for
obtaining services. The Remote host provides singleton classes with
unlimited life time. All classes that needs to be returned to clients are
serializable.
Currently I got no security, synchronous calls only.






[quoted text, click to view]
Mehdi
5/26/2006 3:46:51 PM
[quoted text, click to view]

We were pretty much in the same situation as you are when we switched from
the .NET Framework built-in TCP channel to Genuine Channels' GTCP channel.
The only change we've had to make was to reference the Genuine Channel DLL
and to change TcpChannel to GTcpChannel in the code... There are a few
points to take into account:

- Genuine Channels's GTCP channel is not compatible with the built-in
TcpChannel which means that you have to migrate all your client and server
applications to Genuine Channels at once.
- Of course, just changing TcpChannel to GTcpChannel is easy and works but
if you want to take advantage of Genuine Channels extra features, you'll
have to spend some time to learn about the Genuine Channels API.
Fortunately, their programming guide is clear and complete with code
samples plus there are several articles and sample applications on their
web site so it's actually pretty quick to get up to speed with Genuine
Channels.

Don't forget that you can try it for free (the trial package comes with all
AddThis Social Bookmark Button