I did a netstat -an. And i noticed a port number, say 6000.
How can i identify which are the services to stop in the different rc**
google on "port service lsof" for examples.
This will get you part of the way to identifying the rc script. Maybe you
can get a pattern from lsof that you could then use do a search over
/etc/rc* and get a hit in a particular rc script.
> I did a netstat -an. And i noticed a port number, say 6000.
> How can i identify which are the services to stop in the different rc**
Its not a true solution, but to just find what process is having what portQuote:> There are several things you can look at.
> Possibly the best would be to download and install the lsof utility
> onto your system. I believe that you can still get this from
> www.sunfreeware.com. Once installed, you can do the following:
> lsof|grep TCP|grep 6000
> The output will tell you which PID is running the service that has that
> port open. From that you can do a ps -ef|grep <PID> and find out what
> the actual process is. From there, you'll have to figure out which
> startup script initiates the process that opens this port.
> Alternately, you might be able to dig through your /etc/services and
> /etc/inetd.conf files for the port number, and if the entry actually
> matches the service name that has the port open on your system, you can
> figure out which script runs the process for that service.
> Leon Workman
for i in `ps -e|cut -c1-7`; do echo $i:; pfiles $i|grep port; done
thats just a fasthack, but it shows you what ports are used by what
6000 is normally your X server.
http://www.csua.berkeley.edu/~alanc/ * http://blogs.sun.com/alanc/
Working for, but definitely not speaking for, Sun Microsystems, Inc.
I have created an application that runs as a client on a ADSL modem
and communicates with a server on a Windows/MAC using as RAW socket
sk = socket(PF_INET, SOCK_PACKET, htons(ETH_P_ALL));
With this socket I can send RAW data to the server that listens on
62828 . When I send I create my own ethernet, IP and UDP and send it
out on my eth0 interface. This all works fine and my server receives
the data correctly and responds. However now I have a question what
number to assign to my source port number on UDP when creating my
packet on the client??
From what I understand when using a UDP socket and having the network
stack creating the message the UDP source port number is taken from an
internal list. This ensures that no applications will select the same
port numbers when sending out data. But since I create my own packets
and send them out using RAW socket I can just give and number as UDP
source port number and I feel that this is not correct. If I am
unlucky I will create a conflict having 2 applications(my client) and
another one both sending out on the same port.
So my question is:
1) How do I get "hold" of a valid UDP port number that I can assign to
my RAW packet?
2) Is there some sort of API I can call and if so what?
3) What are the implications/problems if one for some reason have two
applications sending out data on the same port number?
Any input and advice is greatly appreciated.