When we ping to any Public IP of a router it give a reply, we dont get reply, if we ping a local computer with its private IP of a particular network, So is there a way so I can make direct connection or socket with a particular PC in a network. I have heard that, I have to make connection with public IP of a particular network and the port number will decide, on which PC in that network , my request will go. But this method is not working..
How Can I ping or create a scoket connection with my friend?
295 views Asked by Ashish Rana At
2
There are 2 answers
0
AudioBubble
On
You can decide with your friend who is going to be the client (the one initiation the TCP connection) and who is the server (the one receiving the TCP connection) and which port should be used (let's say X). Let's say that your friend is the server. Then he/she has to configure his/her router to redirect all the traffic to the router to port X to his/her private IP to port X (this is what Warren mentioned as NAT).
If you use a port above 1024, the server (running on your friend's PC) doesn't need root/administrator privileges.
Your program (the client) would then connect to the public IP address of your friend. He/she can check his/her public IP with: What is my IP
Related Questions in SOCKETS
- Node.js Server + Socket.IO + Android Mobile Applicatoin XHR Polling Error...?
- My server TCP doesn't receive messages from the client in C
- how is strncpy able to copy from source to empty destination?
- Python Multicast packet receiver stops receiving multicast packets when computer is connected to WiFi
- Python Client-Server Communication with Protocol
- Reversed TLS re-connection issue
- Android 13 & 14 seem to close WebSocket connection, if i put app in background, after ~20s
- Java SocketException: Connection reset,. What is the cause?
- Multipart/form-data with chunked data transfer (ICAP protocol)
- View Socket View
- Client connection timeout during Android & Windows PC communication via sockets
- Browser connect to raw sockets even possible?
- Protocol 43200 after unpacking received data
- Unity SocketIo using Best http2 plugin want to use in webgl
- How does pre-allocating a pool of SocketAsyncEventArgs objects upfront improve the performance of a server application in c#
Related Questions in NETWORKING
- How to avoid duplicates with the pull-based subscribe model?
- How to simulate CSMA/CD protocol in ns3?
- Network System - Cisco Packet Tracer
- Adhoc / mesh network not working (with and without batman-adv)
- Algorithm for finding a subset of nodes in a weighted connected graph such that the distance between any pair nodes are under a postive number?
- Python Client-Server Communication with Protocol
- I registered a service in eureka which is resolving through java code. But it is not able to resolve its name when hitting through chrome or postman
- Share files from the server without data or internet usage
- Player names not synchronizing in unity Mirror Networking
- My phone can not visit the server on macos in the same local network
- Unable to ping remote websites from an ipV6 only ubuntu ec2 Instance
- Linux Networking - Routing packets from one network interface to another
- wrong output from Supernetting algorithm
- Mapping localhost port on host to docker container
- Microsoft Message Analyzer disable resolving IP address to their domain names a.k.a turn off AutoIP feature
Related Questions in IP
- How to use a proxy to obtain a static IP for my Node.js application?
- PHP Get IPv4 Address
- Unable to correctly configure StrongSwan with site-to-site connection and road warrior
- Can I know the namespace of my k8s Pod only by looking at its IP?
- data transfer to ip address using osi model
- Search web address from IP
- Deploy my Django project in my private network
- Generate country names from IP Addresses in R and saving these as a new variable in a dataframe
- Connect to a specific country using Psiphon vpn from Command line
- FastCourier API - Invalid ip accessing app
- TCP/IP Server Using sockets Java
- Calling service with localhost or machine IP for internal calls?
- What does "Simultaneous Live View Up to 6 channels" imply for a IP Camera specification
- X-Forwarded-For in the request-ip package potential bug
- How to scan and message devices connected to OpenThread border router from Android app?
Related Questions in PING
- How can we make an environment specific Token-based authorization using Ping Token?
- Can't ping to 8.8.8.8 and google.com in beaglebone black
- how calculate: mean, standard deviation , coefficient for each ip ping , traceroute
- How to "make" a variable that contains another variable value?
- How to run automatically a command in the CMD after starting it as a process (using C#)
- Ping from a public EC2 instance
- how to perform a Ping flood attack / ICMP flood attack demonstration?
- Not able to connect to an IP from databricks notebook in azure
- Cannot ping server 1 from pc 1 in packet tracer file by setting default route on all 3 routers connected with serial DTE cables
- ModuleNotFoundError, while running a python script as root user in Ubuntu
- Flutter app unable to resolve hostname for ping operation
- Why does my genymotion emulator show 127.0.0.1:6555 on its top window border, rather than a real IP address?
- OIDC enabled web apps prompting for re-authentication although logged in first application initially
- Python library to send pings that doesn't require elevated permissions?
- Resolving NoneType.__format__ Error in a Python UDP Ping Function
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
If the computer is behind a router that uses Network Address Translation (NAT) - that is, the computer has a private IP that is not visible to the internet - then you cannot ping or establish a connection to the computer from the outside. This is because the router does not know which computer you want since all the computers behind the router share the same public IP address.
The way to establish a connection in this case is to have the computer which is behind the router establish the connection to the outside computer. For example, when you go to a web site, you can do it from a computer behind a router since your computer is initiating the connection. However, the web server you are going to must have a public IP.
When a computer behind the router initiates a connection, the router does select a port number to associate with that connection so packets from the outside for that connection will go to the right computer. However, this only works for traffic on that particular connection; the port number is not a general purpose mapping to that computer.
Two computers behind the same router can establish connections with each other using the private IPs as they don't have to go through the router to do it.