端口与服务的关系

一台拥有IP地址的主机可以提供许多服务,比如Web服务、FTP服务、SMTP服务等,这些服务完全通过1个IP地址来实现。那么,主机是怎样区分不同的网络服务呢?显然不能只靠IP地址,因为IP 地址与网络服务的关系是一对多的关系。实际上是通过“IP地址+端口号”来区分不同的服务的。

服务是否可用

举个列子比如mysql服务,需要考虑两方面,首先是服务是否启用,如果启用mysql我们一般会使用3306端口,其次是考虑,此端口是不是对外开放。

1. 检测服务是否启用,端口是不是被监听

查看的方法:

  • 1.1使用lsof命令 lsof -i:3306
# root @ VM_33_19_centos in /etc [9:02:31]
$ lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 2791 mysql 14u IPv4 18188 0t0 TCP *:mysql (LISTEN)
  • 1.2 使用netstat命令 netstat -tunlp 或者 netstat -antup
# root @ VM_33_19_centos in /etc [9:07:46]
$ netstat -antup
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 2791/mysqld
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 13550/sshd
tcp 0 132 10.105.33.19:22 106.120.206.201:57791 ESTABLISHED 5784/sshd: root@pts
tcp 0 0 10.105.33.19:46618 10.142.58.45:5574 ESTABLISHED 794/YDService
tcp6 0 0 :::111 :::* LISTEN 18349/rpcbind
tcp6 0 0 :::21 :::* LISTEN 3105/vsftpd
tcp6 0 0 :::22 :::* LISTEN 13550/sshd
udp 0 0 0.0.0.0:111 0.0.0.0:* 18349/rpcbind
udp 0 0 0.0.0.0:716 0.0.0.0:* 18349/rpcbind
udp6 0 0 :::111 :::* 18349/rpcbind
udp6 0 0 :::716 :::* 18349/rpcbind
  • 1.3使用工具nmap

安装 yum install nmap -y

使用 nmap 127.0.0.1

nmap 127.0.0.1 查看本机开放的端口,会扫描所有端口。 当然也可以扫描其它服务器端口。

# root @ VM_33_19_centos in /etc [9:11:17]
$ nmap 127.0.0.1 Starting Nmap 6.40 ( http://nmap.org ) at 2017-10-27 09:12 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000030s latency).
Not shown: 996 closed ports
PORT STATE SERVICE
21/tcp open ftp
22/tcp open ssh
111/tcp open rpcbind
3306/tcp open mysql

2. 查看端口是不是对外开放

  • 服务器端口即使处于监听状态,但是防火墙iptables屏蔽了该端口,我们也不能对外提供服务

可以使用telnet检测端口是否开放 telnet xxx.xx.xx.xx 3306

  • 检测一个IP的某个端口是否开放,那么你会用什么命令来测试呢?是ping还是telnet?

其实正确的方法应该是telnet命令。因为用ping命令的话不管你ping哪个端口,只要这个IP地址可以ping通,都会有数据返回。

centos使用--排查服务是否可用的更多相关文章

  1. centos telnet --xinetd 服务

    telnet由于是明文传输,所以安全起见最好不要用telnet服务.但是由于telnet是一个比较方便的远程工具,在windows上是自带 的不需要安装客户端即可使用.如果telnet设置的比较复杂, ...

  2. Hive扩展功能(五)--HiveServer2服务高可用

    软件环境: linux系统: CentOS6.7 Hadoop版本: 2.6.5 zookeeper版本: 3.4.8 主机配置: 一共m1, m2, m3这五部机, 每部主机的用户名都为centos ...

  3. [转帖]centos 7 avahi-daemon服务的作用及如何关闭

    centos 7 avahi-daemon服务的作用及如何关闭 https://blog.csdn.net/tjjingpan/article/details/81237308 关闭 systemct ...

  4. Spring Redis开启事务支持错误用法导致服务不可用

      1.事故背景 在APP访问服务器接口时需要从redis中获取token进行校验,服务器上线后发现一开始可以正常访问,但只要短时间内请求量增长服务则无法响应 2.排查流程 (1)使用top指令查看C ...

  5. CentOS 7 Xinetd服务安装配置

    CentOS 7 Xinetd服务安装配置 目录 CentOS 7 Xinetd服务安装配置 一.Linux守护进程与初始化进程 1. 什么是守护进程 2. 什么是初始化 二.Linux独立启动进程和 ...

  6. 学习heartbeat-05 实现web服务高可用

    一.环境介绍 说明:所有案例在虚拟机(VMware)上完成 操作系统:centos 6.5 64bit 高可用软件:heartbeat 3.0.4 Web应用服务器:apache httpd 2.2. ...

  7. C#测试web服务是否可用

    winform客户端经常需要调用webservice或者WCF进行数据交互,但是远程服务有可能不存在或者服务器不可用,客户端只能通过超时或者捕获到异常感知服务不可用.其实有一个COM借口可用快速的检测 ...

  8. IIS 7 WAS服务不可用

    在 Windows Server 2008 上使用 %windir%\system32\inetsrv\appcmd.exe list wp 命令,得到如下错误: ERROR ( message:WA ...

  9. CentOS服务器配置发送邮件服务

    CentOS服务器配置发送邮件服务 lsb_release -a 查看linux系统版本 在CentOS6以上版本自带mailx版本12.4 rpm -qa | grep mailx 查看系统自带的m ...

随机推荐

  1. HCNA管理设置文件系统FTP服务上传下载文件

    1.拓扑图 2.R2配置 The device is running! ###################################### <Huawei>sys Enter s ...

  2. JavaScript 获取数组的最大值和最小值

    js获取数组最大值和最小值 使用apply方法: var a = [1,2,3,5]; console.log(Math.max.apply(null, a));//最大值 console.log(M ...

  3. 关于Linux主流框架运维工作剖析

    LINUX是开源的,这也是最主要的原因,想学Windows,Unix对不起,没有源代码.也正是因为这样,LINUX才能够像雪球一样越滚越大,发展到现在这种规模.今天将为大家带来关于Linux主流框架运 ...

  4. Altium_Designer-PCB中各层作用详解

    一直以来,对PCB中各层,比如:solder层.paste层.Top overlay层等等这些一知半解.今天仔细看了下,向大家介绍一下,有不对的地方还请指正. 1.mechanical机械层是定义整个 ...

  5. BZOJ 3233: [Ahoi2013]找硬币

    BZOJ 3233: [Ahoi2013]找硬币 标签(空格分隔): OI-BZOJ OI-DP Time Limit: 10 Sec Memory Limit: 64 MB Description ...

  6. 【转】android布局--Android fill_parent、wrap_content和match_parent的区别

    三个属性都用来适应视图的水平或垂直大小,一个以视图的内容或尺寸为基础的布局比精确地指定视图范围更加方便. 1)fill_parent 设置一个构件的布局为fill_parent将强制性地使构件扩展,以 ...

  7. javaweb基础(39)_数据库连接池

    一.应用程序直接获取数据库连接的缺点 用户每次请求都需要向数据库获得链接,而数据库创建连接通常需要消耗相对较大的资源,创建时间也较长.假设网站一天10万访问量,数据库服务器就需要创建10万次连接,极大 ...

  8. C# 使用布尔操作符

    布尔操作符(Boolean operator)是求值结果要么为true,要么为false的一种操作符.C#提供了几个非常有用的布尔操作符,其中最简单的是NOT(求反)操作符,它使用感叹号(!)来表示. ...

  9. 开发SDK注意事项

    1. 修改类别文件名及类别方法. 开发SDK时通常会用到比较多的第三方的类别方法, 这样的话, 开发者在使用你的SDK时, 因为他可能也会加一些第三方的开源库, 比如都使用了NSString的md5类 ...

  10. 太阳地球月亮运行动画(使用@keyframes)

    闲来无事的demo <!DOCTYPE html> <html> <head> <meta charset="utf-8"> < ...