This is a copy of a post I made in the C# forum. It really is a networking question. Please help me if you can.
I have a program that sends out UDP traffic via csharp. The code works in the local LAN. We even got it working to other VLANs through ip pim sparse-dense-mode on our Cisco 6504 switch. The problem is that we want this to run to a remote location outside of our LAN. We have a T1 connection to another site. We can ping and do file transfers with the remote machines. But the remote machines do not "hear" the multicast messages. What settings need to be set so that the remote site can get this multicast traffic? Many thanks in advance.
John
The Server:
private IPEndPoint iepSend = null;
private IPEndPoint iepSend2 = null;
private Socket sendSocket = null;
...
sendSocket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp);
iepSend = new IPEndPoint(IPAddress.Any, 4203);
iepSend2 = new IPEndPoint(IPAddress.Parse("227.40.23.1"), 4203);
sendSocket.Bind(iepSend);
sendSocket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.AddMembership, new MulticastOption(IPAddress.Parse("227.40.23.1")));
sendSocket.SetSocketOption(SocketOptionLevel.IP, SocketOptionName.MulticastTimeToLive, 50);
...
byte[] bytes = UnicodeEncoding.ASCII.GetBytes("hello world");
sendSocket.SendTo(bytes, iepSend2);
The Client
UdpClient clientListener = new UdpClient(4203);
clientListener.JoinMulticastGroup(IPAddress.Parse("227.40.23.1"));
IPEndPoint iep = new IPEndPoint(IPAddress.Any, 0);
byte[] bytes = clientListener.Receive(ref iep);
string s = UnicodeEncoding.ASCII.GetString(bytes);