Windows Vista Tips

Windows Vista Tips > Newsgroups > Windows Server > Server Networking > Multiple closed (private) networks with UDP messages.

Reply
Thread Tools Display Modes

Multiple closed (private) networks with UDP messages.

 
 
TomChapman
Guest
Posts: n/a

 
      10-28-2009
My customer has a closed network (private network). One server on that
network is sending UDP data that the program I am writing needs. The
plan was to buy a new server for my program and connect it to the network.

Life gets complicated.

The customer actually has three identical closed networks and I need
data from all three. The plan was to get multiple NIC cards in the same
server. One NIC for each closed network.

Life gets complicated.

The customer says the subnets and IP addresses on the three networks are
identical. That can not be changed. I think this is a big problem for
me. My program is written in C++ using MFC. The standard MFC network
data class is CAsyncSocket. When data arrives at my program I will NOT
be able to determine which server it came from because they will all
have the same IP address. Using CAsyncSocket I won't even be able to
match up data segments from the same source. The segments from different
sources will get all mixed up. I won't be able to build up proper packets.

Question? Is there a software way I can solve this?

One solution would be to use separate servers, one to talk to each
closed network.

I am not a networking expert. Please help me. --- Is it possible to run
the data from the closed network though a router and have it translate
the IP so that when it gets to my server each connection looks like a
different IP.

Could all three private networks feed into a single router, translate
the IPs. Would I need one NIC connection for my server to the router or
would I need three connections to the router? Three NICs in my server.
 
Reply With Quote
 
 
 
 
Ace Fekay [MCT]
Guest
Posts: n/a

 
      10-29-2009
"TomChapman" <> wrote in message
news:%...
> My customer has a closed network (private network). One server on that
> network is sending UDP data that the program I am writing needs. The plan
> was to buy a new server for my program and connect it to the network.
>
> Life gets complicated.
>
> The customer actually has three identical closed networks and I need data
> from all three. The plan was to get multiple NIC cards in the same server.
> One NIC for each closed network.
>
> Life gets complicated.
>
> The customer says the subnets and IP addresses on the three networks are
> identical. That can not be changed. I think this is a big problem for me.
> My program is written in C++ using MFC. The standard MFC network data
> class is CAsyncSocket. When data arrives at my program I will NOT be able
> to determine which server it came from because they will all have the same
> IP address. Using CAsyncSocket I won't even be able to match up data
> segments from the same source. The segments from different sources will
> get all mixed up. I won't be able to build up proper packets.
>
> Question? Is there a software way I can solve this?
>
> One solution would be to use separate servers, one to talk to each closed
> network.
>
> I am not a networking expert. Please help me. --- Is it possible to run
> the data from the closed network though a router and have it translate the
> IP so that when it gets to my server each connection looks like a
> different IP.
>
> Could all three private networks feed into a single router, translate the
> IPs. Would I need one NIC connection for my server to the router or would
> I need three connections to the router? Three NICs in my server.




First, I am not sure what you mean by:
"One server on that network is sending UDP data that the program I am
writing needs."

How did you determine that the server is sending out UDP traffic?
What kind of UDP traffic are you referring to?
What application are you trying to install, and what applications are
installed on that server?

If the server is a domain controller, under no circumstances do you want to
install multiple network cards, or you will cause a huge problem with Active
Directory.

If the customer has three internal subnets, (that you call 'closed'
networks), and you need to have them all communicate, my assumption is that
if a company has more than one internal subnet, there must be someone that
had configured the subnets to all communicate to each other already.

As for this question:
"I am not a networking expert. Please help me. --- Is it possible to run
the data from the closed network though a router and have it translate
the IP so that when it gets to my server each connection looks like a
different IP."

In a truly routed infrastructure (where one subnet communicates to another
through routers), yes, they will already be communicating, that is if they
were configured properly. If you are asking about using NAT between one
subnet to another, that complicates things. To get an application that
communicates to the outer interface of a NAT device (such as a firewall or
Cable router), there has to be a port-remap rule configured on the NAT
device to communicate wtih the server on the internal side of the NAT
device. In a 'routed' (not using NAT) scenario, this is not necessary, and
traffic is simply routed. NAT does a translation, and NOT all applications
work through a NAT due to possibly requiring authentication. But that all
depends on the app and how it works.

I can go on, but as you said, you are not a networking expert, and this can
get complicated, or can be easy, depending on many things. This may get over
your head, and to do it right without sacrificing any current services, you
may need to contact someone that is familiar with networking. Do you or your
customer have a network engineer that you use or used to setup the current
network, or someone that is familiar with networking that you can contact?


--
Ace

This posting is provided "AS-IS" with no warranties or guarantees and
confers no rights.

Please reply back to the newsgroup or forum for collaboration benefit among
responding engineers, and to help others benefit from your resolution.

Ace Fekay, MCT, MCITP EA, MCTS Windows 2008 & Exchange 2007, MCSE & MCSA
2003/2000, MCSA Messaging 2003
Microsoft Certified Trainer

For urgent issues, please contact Microsoft PSS directly. Please check
http://support.microsoft.com for regional support phone numbers.



 
Reply With Quote
 
TomChapman
Guest
Posts: n/a

 
      10-29-2009
Ace Fekay [MCT] wrote:
> "TomChapman" <> wrote in message
> news:%...
>> My customer has a closed network (private network). One server on that
>> network is sending UDP data that the program I am writing needs. The plan
>> was to buy a new server for my program and connect it to the network.
>>
>> Life gets complicated.
>>
>> The customer actually has three identical closed networks and I need data
>> from all three. The plan was to get multiple NIC cards in the same server.
>> One NIC for each closed network.
>>
>> Life gets complicated.
>>
>> The customer says the subnets and IP addresses on the three networks are
>> identical. That can not be changed. I think this is a big problem for me.
>> My program is written in C++ using MFC. The standard MFC network data
>> class is CAsyncSocket. When data arrives at my program I will NOT be able
>> to determine which server it came from because they will all have the same
>> IP address. Using CAsyncSocket I won't even be able to match up data
>> segments from the same source. The segments from different sources will
>> get all mixed up. I won't be able to build up proper packets.
>>
>> Question? Is there a software way I can solve this?
>>
>> One solution would be to use separate servers, one to talk to each closed
>> network.
>>
>> I am not a networking expert. Please help me. --- Is it possible to run
>> the data from the closed network though a router and have it translate the
>> IP so that when it gets to my server each connection looks like a
>> different IP.
>>
>> Could all three private networks feed into a single router, translate the
>> IPs. Would I need one NIC connection for my server to the router or would
>> I need three connections to the router? Three NICs in my server.

>
>
>
> First, I am not sure what you mean by:
> "One server on that network is sending UDP data that the program I am
> writing needs."
>

I'm sorry. I normally hang out in a programmers newsgroup. I'm sure the
wording of my question seems out of place in this newsgroup. Someone in
the programming newsgroup suggested that I ask my questions in a
networking group since my questions were so heavily into networking.

In my programmer world the questions you find odd are completely normal.

> How did you determine that the server is sending out UDP traffic?


I know this because it is documented in an manual for the computer
system I am working with. The internal raw format of the packets byes
and everything.

> What kind of UDP traffic are you referring to?


Normally from a programmers viewpoint this does not matter. In my
specific case the format of the packets is defined in a protocol
document that I was provided.

> What application are you trying to install, and what applications are
> installed on that server?


I'm not trying to install anything yet. At the moment I am trying to
write a program that receives the UDP data. I'm going to process it. My
program will then use this data to do what my customer has me to do with
it. Statistics, status, tables, reports, etc.
>
> If the server is a domain controller, under no circumstances do you want to
> install multiple network cards, or you will cause a huge problem with Active
> Directory.


I indicated that this is a closed network. To programmers that means a
cluster of computers all connected to a single router. That router has
ZERO connections to the outside world. No connection to another router.
No connection to the companies office LAN, no connection to the
internet. The different computers in this cluster just talk to each
other. The system does what it needs to to do. There is no need for
these computers to talk to any computer outside of this cluster. For
security and stability purposes, the company that developed this system,
does not normally connect this system to the outside world.

There is no active directory. I'm not even sure what operating system
these computers are running. To me they are just boxes, one of which is
sending out UDP data that I need to receive.

>
> If the customer has three internal subnets, (that you call 'closed'
> networks), and you need to have them all communicate, my assumption is that
> if a company has more than one internal subnet, there must be someone that
> had configured the subnets to all communicate to each other already.


I never said that the 3 closed networks need to communicate with each
other. I said, my program, running on my server, needs to receive UDP
data from each of these three networks. Like I said the networks are
separated and do not talk with each other.
>
> As for this question:
> "I am not a networking expert. Please help me. --- Is it possible to run
> the data from the closed network though a router and have it translate
> the IP so that when it gets to my server each connection looks like a
> different IP."
>
> In a truly routed infrastructure (where one subnet communicates to another
> through routers), yes, they will already be communicating, that is if they
> were configured properly. If you are asking about using NAT between one
> subnet to another, that complicates things.


I'm actually asking about using NAT between one subnet that is
standalone and not connected to any other network. Between that subnet
and my server.

Specifically, I have this closed network that uses one and only one
router. I will plug my computer's network cable into this router giving
my computer the ability to talk with the other computers on this subnet.

There are three of these subnets. They have ZERO connections to each
other or to anything outside of them selves.

My plan was to use a server that had multiple network cards. I would
connect one card to each of these networks. This would give my program
running on this server the ability to receive UDP data that is being
broadcast on each of these networks.

When my software receives packets of UDP data, my software knows the
data and also the IP address that the data came from. I have a problem
though... Since all three networks have the same IP subnet number and
the same IP addresses, I can't tell which network is sending a specific
packet. I need to know that.

It is impossible to change subnet numbers. This is a critical system and
my program is a minor part. They will NOT change the IPs to
accommodate my needs.

I am hoping that I can solve this problem by inserting a new router that
I will purchase and place this router between one of the subnets and my
server. I was asking if the router could translate the IP addresses of
data from one of these networks and make it look like to my program that
it was coming from a different subnet number. My goal is to make each of
the three networks look like they have different IPs. This would solve
my problem of knowing what data was coming from what network.

> To get an application that
> communicates to the outer interface of a NAT device (such as a firewall or
> Cable router), there has to be a port-remap rule configured on the NAT
> device to communicate wtih the server on the internal side of the NAT
> device. In a 'routed' (not using NAT) scenario, this is not necessary, and
> traffic is simply routed. NAT does a translation, and NOT all applications
> work through a NAT due to possibly requiring authentication. But that all
> depends on the app and how it works.
>
> I can go on, but as you said, you are not a networking expert, and this can
> get complicated, or can be easy, depending on many things. This may get over
> your head, and to do it right without sacrificing any current services, you
> may need to contact someone that is familiar with networking. Do you or your
> customer have a network engineer that you use or used to setup the current
> network, or someone that is familiar with networking that you can contact?
>
>

 
Reply With Quote
 
Ace Fekay [MCT]
Guest
Posts: n/a

 
      10-29-2009
"TomChapman" <> wrote in message
news:...
> Ace Fekay [MCT] wrote:
>> "TomChapman" <> wrote in message
>> news:%...
>>> My customer has a closed network (private network). One server on that
>>> network is sending UDP data that the program I am writing needs. The
>>> plan was to buy a new server for my program and connect it to the
>>> network.
>>>
>>> Life gets complicated.
>>>
>>> The customer actually has three identical closed networks and I need
>>> data from all three. The plan was to get multiple NIC cards in the same
>>> server. One NIC for each closed network.
>>>
>>> Life gets complicated.
>>>
>>> The customer says the subnets and IP addresses on the three networks are
>>> identical. That can not be changed. I think this is a big problem for
>>> me. My program is written in C++ using MFC. The standard MFC network
>>> data class is CAsyncSocket. When data arrives at my program I will NOT
>>> be able to determine which server it came from because they will all
>>> have the same IP address. Using CAsyncSocket I won't even be able to
>>> match up data segments from the same source. The segments from different
>>> sources will get all mixed up. I won't be able to build up proper
>>> packets.
>>>
>>> Question? Is there a software way I can solve this?
>>>
>>> One solution would be to use separate servers, one to talk to each
>>> closed network.
>>>
>>> I am not a networking expert. Please help me. --- Is it possible to run
>>> the data from the closed network though a router and have it translate
>>> the IP so that when it gets to my server each connection looks like a
>>> different IP.
>>>
>>> Could all three private networks feed into a single router, translate
>>> the IPs. Would I need one NIC connection for my server to the router or
>>> would I need three connections to the router? Three NICs in my server.

>>
>>
>>
>> First, I am not sure what you mean by:
>> "One server on that network is sending UDP data that the program I am
>> writing needs."
>>

> I'm sorry. I normally hang out in a programmers newsgroup. I'm sure the
> wording of my question seems out of place in this newsgroup. Someone in
> the programming newsgroup suggested that I ask my questions in a
> networking group since my questions were so heavily into networking.
>
> In my programmer world the questions you find odd are completely normal.
>
>> How did you determine that the server is sending out UDP traffic?

>
> I know this because it is documented in an manual for the computer system
> I am working with. The internal raw format of the packets byes and
> everything.
>
>> What kind of UDP traffic are you referring to?

>
> Normally from a programmers viewpoint this does not matter. In my specific
> case the format of the packets is defined in a protocol document that I
> was provided.
>
>> What application are you trying to install, and what applications are
>> installed on that server?

>
> I'm not trying to install anything yet. At the moment I am trying to write
> a program that receives the UDP data. I'm going to process it. My program
> will then use this data to do what my customer has me to do with it.
> Statistics, status, tables, reports, etc.
>>
>> If the server is a domain controller, under no circumstances do you want
>> to install multiple network cards, or you will cause a huge problem with
>> Active Directory.

>
> I indicated that this is a closed network. To programmers that means a
> cluster of computers all connected to a single router. That router has
> ZERO connections to the outside world. No connection to another router. No
> connection to the companies office LAN, no connection to the internet. The
> different computers in this cluster just talk to each other. The system
> does what it needs to to do. There is no need for these computers to talk
> to any computer outside of this cluster. For security and stability
> purposes, the company that developed this system, does not normally
> connect this system to the outside world.
>
> There is no active directory. I'm not even sure what operating system
> these computers are running. To me they are just boxes, one of which is
> sending out UDP data that I need to receive.
>
>>
>> If the customer has three internal subnets, (that you call 'closed'
>> networks), and you need to have them all communicate, my assumption is
>> that if a company has more than one internal subnet, there must be
>> someone that had configured the subnets to all communicate to each other
>> already.

>
> I never said that the 3 closed networks need to communicate with each
> other. I said, my program, running on my server, needs to receive UDP data
> from each of these three networks. Like I said the networks are separated
> and do not talk with each other.
>>
>> As for this question:
>> "I am not a networking expert. Please help me. --- Is it possible to run
>> the data from the closed network though a router and have it translate
>> the IP so that when it gets to my server each connection looks like a
>> different IP."
>>
>> In a truly routed infrastructure (where one subnet communicates to
>> another through routers), yes, they will already be communicating, that
>> is if they were configured properly. If you are asking about using NAT
>> between one subnet to another, that complicates things.

>
> I'm actually asking about using NAT between one subnet that is standalone
> and not connected to any other network. Between that subnet and my server.
>
> Specifically, I have this closed network that uses one and only one
> router. I will plug my computer's network cable into this router giving my
> computer the ability to talk with the other computers on this subnet.
>
> There are three of these subnets. They have ZERO connections to each other
> or to anything outside of them selves.
>
> My plan was to use a server that had multiple network cards. I would
> connect one card to each of these networks. This would give my program
> running on this server the ability to receive UDP data that is being
> broadcast on each of these networks.
>
> When my software receives packets of UDP data, my software knows the data
> and also the IP address that the data came from. I have a problem
> though... Since all three networks have the same IP subnet number and the
> same IP addresses, I can't tell which network is sending a specific
> packet. I need to know that.
>
> It is impossible to change subnet numbers. This is a critical system and
> my program is a minor part. They will NOT change the IPs to accommodate my
> needs.
>
> I am hoping that I can solve this problem by inserting a new router that I
> will purchase and place this router between one of the subnets and my
> server. I was asking if the router could translate the IP addresses of
> data from one of these networks and make it look like to my program that
> it was coming from a different subnet number. My goal is to make each of
> the three networks look like they have different IPs. This would solve my
> problem of knowing what data was coming from what network.
>


I see. Thanks for the detailed explanation. If they will allow you to get a
server to run your app on that will connect to the three subnets, then no
NAT is required. The server is simply connected to the subnets and will
receive whatever traffic is on them, as long as your app is designed to
receive what type of traffic.

In this case, there is no IP translation, which based on what I just
mentioned, is that the server is simply connected to all three subnets.
However all three subnets much have a different IP subnet range, otherwise
there will be a conflict.

Have you spoke to the networking folks regarding your plans?

Ace



 
Reply With Quote
 
 
 
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
How do I Backup Windows Mail? Lorraine Windows Vista Performance 26 01-19-2008 10:32 AM



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59