mac上如何查看某端口号被哪些程序占用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mac上如何查看某端口号被哪些程序占用相关的知识,希望对你有一定的参考价值。
在网络程序的调试过程中,经常发生一些出乎意料的事情,比如创建一个TCP服务失败,这时候往往需要查看系统的网络情况,最常用的网络抓包当然非WireShark模式。但往往很多时候只需要查看某个端口的使用情况,它到底被那个进程(对应PID)占用了,或者你还需要把它Kill掉。如果你在Windows操作系统,你可以使用netstat命令来查询PID,然后可以打开任务管理器,查看这个PID对应的进程名;如果PID没有显示,菜单》查看》选择列》选中PID即可;得知进程后,我们可以将进程杀掉。下面我简单描述一下我所了解的在Windows和Linux系统下处理方式。(假如我们需要确定谁占用了我们的9010端口)1、Windows平台在windows控制台窗口下执行:netstat-nao|findstr9010TCP127.0.0.1:90100.0.0.0:0LISTENING3017你看到是PID为3017的进程占用了9010端口,如果进一步你想知道它的进程名称,你可以使用如下命令:tasklist|findstr3017如果你想杀死这个进程,你当然可以用前面描述的那种方法,在任务管理器里把它KILL了,但如果你喜欢高效一点,那么用taskkill命令就可以了。taskkill/pid3017那么这个进程就灰灰湮灭了:)2、Linux如果你是个Linux爱好者,那个这个命令你应该很熟了,netstat-pan|grep9010如果你稍微仔细一点,你会发现,用的都是netsta命令,事实上,netstat是一个比较通用的网络统计命令,几乎适用于所有现在流行的操作系统,无论是Linux,Window,还是其他Unix,或者Unix-like操作系统,而且用法基本一致。下面是一个对Windows系统中netstat命令行参数的详细解释。格式:netstat[-a][-e][-n][-o][-pProtocol][-b][-r][-s][-v][Interval]参数说明:-a显示所有连接和监听端口。-n以数字形式显示地址和端口号。-o显示与每个连接相关的所属进程ID。-p在Windows系统中,该选项用于指定默认情况的子集。proto显示proto指定的协议的连接;proto可以是下列协议之一:TCP、UDP、TCPv6或UDPv6。如果与-s选项一起使用以显示按协议统计信息,proto可以是下列协议之一:IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP或UDPv6。-b显示包含于创建每个连接或监听端口的可执行组件。在某些情况下已知可执行组件拥有多个独立组件,并且在这些情况下;包含于创建连接或监听端口的组件序列被显示。这种情况下,可执行组件名在底部的[]中,顶部是其调用的组件,等等,直到TCP/IP部分。注意此选项可能需要很长时间,如果没有足够权限可能失败。-e显示以太网统计信息。此选项可以与-s选项组合使用。-s显示按协议统计信息。默认地,显示IP、IPv6、ICMP、ICMPv6、TCP、TCPv6、UDP和UDPv6的统计信息。-r显示路由表。-v与-b选项一起使用时将显示包含于为所有可执行组件创建连接或监听端口的组件。interval重新显示选定统计信息,每次显示之间暂停时间间隔(以秒计)。按CTRL+C停止重新显示统计信息。如果省略,netstat显示当前配置信息(只显示一次)。 参考技术A 同网段下IP地址不可以重复使用,MAC地址是可以复制的,但是IP地址不可以复制。在有DHCP服务器分配IP的情况下IP算自动获取。手动设置情况下,你先设置的IP别人是无法占用的。后者会提示此IP已经分配给其他人,是连不上网的。如果学校已经在路由器上把你IP与MAC地址绑定了,别人是无法盗用的,因为IP是默认到端口的。别人要用要先复制MAC,在改IP最后连网线接口都要使用你的电脑上的。nginx配置某端口号后无法运行排查
参考技术A 这边测试您的服务器网络通、端口不通,您那边远程登录服务器执行下:给我们反馈一下截图systemctl status firewalld
iptables -L
netstat -anp | grep 1111——查看端口是否监听
看是否是由于端口未监听导致
如果端口未监听——>就是端口对应服务未启动,需要服务启动——端口监听上,防火墙不拦截、安全组放通,就可以访问了
(端口未监听表示对应的程序没有启动,程序未启动表明外部就访问不到,端口就无法打开)
以上是关于mac上如何查看某端口号被哪些程序占用的主要内容,如果未能解决你的问题,请参考以下文章