how to make remote p2p chat vb.net - vb.net

How can i make a p2p chat in vb.net communicate with my friends PC at their house from my own.
i have made a LAN Chat which was fairly simple, but i really cannot figure out how to get it to connect to his pc using a public ip.
I Assume that port forwarding would be a factor in this but Im trying to make it so that port forwarding is not required to be done so the user (my friend) does not have to porforward.
The Program is comprised of text-boxes threads and the Transmission Control Protocol for the listeners/server
please help thank you very much, sorry if my English appalls you. :D

All Fixed, It Was Port Forwarding Which Was Needed To Be Done,no need to Post on This Any More

Related

Encrypted Traffic on Private Network

I'd appreciate some help with thinking through a problem. On a local network, I have:
A raspberry pi with some server software on it
A separate computer running an electron app, which is supposed to talk to the RPi through websockets. The user enters the IP address of the RPi into the app, and a connection is opened.
I need a good way to secure communication between this electron app and the RPi. I've looked into using SSL/TLS with secure websockets, but it doesn't seem like this is a good idea (feel free to tell me otherwise)
Has anyone implemented something like this or encountered a similar problem? Any suggestions are greatly appreciated.

Is it possible to bridge ssh through a 4G connection?

My case is the following: I will install some prototypes connected together with wifi (one device is the AP) in a distant site. I'd like to be able to remotely connect to my network for avoiding to travel.
As there will be 4G networks available there, I was wondering if a simple solution could be to have a smartphone connected to my wifi network, and use it to forward ssh client requests through 4G connection.
I have no idea if it's possible, how/depending on network operators, if there are standards and software (preferably android) for doing so.
Sorry it this question remains a bit vague, but any pointers would be appreciated.
There are also some 4G boxs that provide internet as wifi AP. I could change my network to connect to it, but I have no idea if I can reliabily get an address to this.
Thanks for your help.
A VPN server might be an option. Like DD-WRT on a router, or your own dedicated VPN server.

What is the best way to send data to PC from "MCU + Wifi Module"?

I don't know anything about wireless protocols. With this quick setup i want to get inside. I just want to write a windows desktop application which receives only a couple of bytes of data from a mcu+wifi module "NodeMCU" which is connected to the same router. I can write a simple desktop app with visual studio. But sending data over ip has many methods as far as i read.
What is the simplest way to achieve? (I'm experienced in STM32 mcu's and electronics except internet protocols.)
You can send the data from the embedded board (with the mcu) to a TTL-To-WiFi module. Then from your PC application you should open a socket and connect to the module IP to listen in the correct port the data from your board.. There are a lot of module in the market used as "bridge" or converter: you have only to setup in it the local IP address, the destination IP (your PC) and the TCP port where you want to send data. From point of view of the board you use a standard USART and the message is sent to the destination IP. In your PC application you should be able to create a socket and connect it to the wi-fi module.

UDP Hole punching unsuccessful, but tests show it should work (mobile network)

For the past two week I have been unsuccessfully trying to implement udp hole punching, but I'm not sure why. I understand that the algorithm for hole punching is not guaranteed to work, but I believe it should work in my test case because I have noticed that once I bind my socket on my home-network, the port is the same to the outside world as it is locally, and stays that way for all connections made from this socket. Any help after reviewing my trials would be appreciated.
I have three computers, my osx desktop, my iPhone, and my amazon ec2 ami.
on the desktop I've built a cocoa app which uses the GCDAsyncUDPSocket library to bind a port and contact the ec2 server, where a java app using apache's mina library stores the sockets external ip/port and associates it with a username passed in the payload.
the iphone, which is on the AT&T network runs an app which uses the same GCDAsyncUDPSocket library to contact the ec2 server with the same username, which then the ec2 does a lookup for the username, finds the desktops info and informs the desktop of the iphones address and the iphone of the desktops address.
now the iphone & the desktop know about each other they start shooting off packets at each other in hopes to get a punched hole.
in theory this should work, but maybe I am missing something about mobile networks that would make this difficult? But then again running a simple udp echoer on a 4th external computer to manually msg the desktop did not work either, so maybe its my router, but I don't see how that could be as all my tests show that the port the desktop asks for is the same one assigned by the router.
I've been at this for nearly two weeks with little progress and any tips would be appreciated!
"once I bind my socket on my home-network, the port is the same to the outside world as it is locally"
I highly doubt that. To traverse NAT given peers A and B which have sent datagrams to a 3rd party: S you need to send datagrams from A to B and vice versa using their public IPs as seen by S and their port as seen by S (i.e. not the port A, B are bound to from their point of view).

System.Net.Sockets.Socket

Hi
I have a chat program using System.Net.Sockets.Socket that works perfectly over LAN.
My question is - will this same program work over the net with little or no modification and if so do i provide the client with the IP of my machine or of my router and use port forwarding ?
My IP is NOT static (i do understand the implications of this)
thanks
It should work identically, as long as you can get a connection through. there is technically no difference between lan communication and internet communication (one is just huge and complex)