Ifconfig_5k是多少啊

2022-09-22 14:38:26 浏览数 (1)

大家好,又见面了,我是你们的朋友全栈君。

文章目录
  • Linux_day06-07
  • Linux的网络相关
    • 一.设置主机名
    • 二.chkconfig服务配置(仅了解)
    • 三.ntp服务
    • 四.防火墙服务——软件防火墙
    • 五.网络相关的一些命令
      • 1. ifconfig
      • 2. netstat
      • 3. ping
      • 4. telnet——用于测试端口连通性
        • telnet与ssh的区别
      • 5. curl——网页查看

Linux_day06-07

Linux的网络相关

一.设置主机名

  • 临时设置:#hostname 新主机名(切换用户生效,重启还原)
  • 永久设置:修改配置文件/etc/hostname,用vim修改(重启生效)

修改后的主机名可能ping不通,此时需要修改/etc/hosts配置文件,将新名字只指向本机(设置FQDN),新起一行,写上本机ip和名称


回顾:

#hostname——查询完整的主机名

#hostname -f ——查询全限定域名FQDN


不设置FQDN会如何

  1. 很多开源服务器软件(如Apache)会无法启动
  2. 修改后的名字,方便记忆,可以一看到就对这台主机的作用有一个初步判断
  3. 如果不设置,会影响本地的域名解析(本地访问)

二.chkconfig服务配置(仅了解)

安全辅助工具,提供开机启动项的管理服务

1.查看开机启动服务

#chkconfig –list(该指令在CentOS 7已不再常用)

其中0-6表示各个启动级别

比如network服务在3级别为开,则表示其在3启动级别下默认开机启动


CentOS 7 中常用指令是:systemctl list -units –type =service –all

2.删除服务

#chkconfig –del

3.添加开机启动服务

#chkconfig –add 服务名

(并不是所用的软件都有服务名,必须保证正常运行的服务才可以添加)

4.设置服务在某个级别下开机启动

#chkconfig –level 数字数字数字 服务名 on/off

eg.设置httpd服务在3,5级别开机启动

#chkconfig –level 35 httpd on

eg.设置httpd服务在5级别时开机不启动

#chkconfig –level 5 httpd off


三.ntp服务

作用:主要是时用于对计算机的时间同步管理操作,时间对服务器来说很重要,一般很多网站都需要读取服务器时间来记录相关信息,如果时间不准,则可能造成很大影响。

同步服务器时间的方式:

  • 1.一次性手动同步(从别的服务器同步)

#ntpdate 时间服务器的域名或者ip地址

(ip地址查看可以访问 全球可用的NTP服务器列表与解析服务 )

eg.选择一个阿里云的服务器地址来同步 120.25.108.11

  • 2.通过时间同步服务自动同步

服务名:ntpd

启动服务:#service ntpd start 或者 # /etc/init.d/ntpd start

设置ntpd开机自动启动:#chkconfig –level 35 ntpd on


补充概念:时间服务器上游


四.防火墙服务——软件防火墙

防火墙:防范网络攻击,选择性让请求通过,从而保证网络安全

(防水墙:bbs论坛,防灌水)

  • 软件防火墙
  • 硬件防火墙

在CentOS 7 中防火墙名称:firewalld(从前是iptables)

  • 查看防火墙状态 #systemctl status firewalld
  • 临时关闭firewall #systemctl stop firewalld
  • 禁止firewall开机自动启动 systemctl disabled firewalld
  • 设置firewall开机自动启动 systemctl enable firewalld

开启防火墙后,对指定端口进行操作

  • 添加端口 firewall-cmd –zone=public –add-port=端口号/tcp –permanent
  • 防火墙重新载入 firewall-cmd –reload
  • 查看端口 firewall-cmd –zone=public –query-port=端口号/tcp
  • 删除端口 firewall-cmd –zone=public –remove-port=端口号/tcp –permanent

五.网络相关的一些命令

1. ifconfig

作用:获取网络接口配置信息 (if是指interface)

网卡字段简单说明

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500

  • UP:表示“接口已启用”。
  • BROADCAST :表示“主机支持广播”
  • RUNNING:表示“接口在工作中”
  • MULTICAST:表示“主机支持多播”
  • MTU:1500(最大传输单元):1500字节

inet 192.168.1.135 netmask 255.255.255.0 broadcast 192.168.1.255

  • inet :IP地址
  • netmask :掩码
  • broadcast :广播地址

网卡的IPv6地址 inet6 fe80::2aa:bbff:fecc:ddee prefixlen 64 scopeid 0x20

连接类型: Ethernet (以太网) HWaddr (硬件mac地址)

// txqueuelen (网卡设置的传送队列长度) ether 00:aa:bb:cc:dd:ee txqueuelen 1000 (Ethernet)

RX packets 2825 bytes 218511 (213.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 // packets 接收时,正确的数据包数。 // bytes 接收的数据量。 // errors 接收时,产生错误的数据包数。 // dropped 接收时,丢弃的数据包数。 // overruns 接收时,由于速度过快而丢失的数据包数。 // frame 接收时,发生frame错误而丢失的数据包数。


TX packets 1077 bytes 145236 (141.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

packets 发送时,正确的数据包数。 bytes 发送的数据量。 errors 发送时,产生错误的数据包数。 dropped 发送时,丢弃的数据包数。 overruns 发送时,由于速度过快而丢失的数据包数。 carrier 发送时,发生carrier错误而丢失的数据包数。 collisions 冲突信息包的数目。

虚拟网卡:

主要是建立远程计算机间的局域网。虚拟网卡链接技术就是VPN。比如说可以和别的地方的几台机子,通过建立虚拟HUB 实现VPN client的链接,这样就算是在这几台远程计算机间建立的局域网,也能和你的机子一起实现局域网的功能。”

2. netstat

作用: 查看路由表,实际的网络连接以及每一个网络接口设备的状态信息

语法:# netstat [选项]

参数:

-a或–all :显示所有连线中的Socket;

-A<网络类型>或–<网络类型>:列出该网络类型连线中的相关地址;

-c或–continuous:持续列出网络状态;

-C或–cache:显示路由器配置的快取信息;

-e或–extend:显示网络其他相关信息;

-F或–fib:显示FIB;

-g或–groups:显示多重广播功能群组组员名单;

-i或–interfaces:显示网络界面信息表单;

-l或–listening:显示监控中的服务器的Socket;

-M或–masquerade:显示伪装的网络连线;

-n或–numeric:直接使用ip地址,而不通过域名服务器(numerical数值的);

-N或–netlink或–symbolic:显示网络硬件外围设备的符号连接名称;

-o或–timers:显示计时器;

-p或–programs:显示正在使用Socket的程序识别码和程序名称;

-r或–route:显示Routing Table;

-s或–statistice:显示网络工作信息统计表;

-t或–tcp :显示TCP传输协议的连线状况;

-u或–udp :显示UDP传输协议的连线状况;

-v或–verbose:显示指令执行过程;

-V或–version:显示版本信息;

-w或–raw:显示RAW传输协议的连线状况;

-x或–unix:此参数的效果和指定”-A unix”参数相同;

–ip或–inet:此参数的效果和指定”-A inet”参数相同。


常用指令

netstat -a # 列出所有端口

netstat -at # 列出所有TCP端口

netstat -au # 列出所有UDP端口

netstat -ax # 列出所有unix端口

netstat -s # 显示所有端口的统计信息

netstat -st # 显示所有TCP的统计信息

netstat -su # 显示所有UDP的统计信息

netstat -atnlp # 直接使用ip地址列出所有处理监听状态的TCP端口,且加上程序名


字段说明

Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name

  • Proto:协议名(tcp协议还是udp协议);
  • recv-Q:网络接收队列

表示收到的数据已经在本地接收缓冲,有多少没有被进程取走,如果接收队列Recv-Q一直处于阻塞状态,可能是遭受了拒绝服务 denial-of-service 攻击;

  • send-Q:网路发送队列

对方没有收到的数据或者说没有Ack的,还是本地缓冲区.

如果发送队列Send-Q不能很快的清零,可能是有应用向外发送数据包过快,或者是对方接收数据包不够快;

这两个值通常应该为0,如果不为0可能是有问题的。


packets在两个队列里都不应该有堆积状态,可接受短暂的非0情况。

  • Local Address

1.Local Address 部分的0.0.0.0:873表示监听服务器上所有ip地址的所有(0.0.0.0表示本地所有ip),比如你的服务器是有172.172.230.210和172.172.230.11两个ip地址,那么0.0.0.0:873此时表示监听以下三个地址的873端口

172.172.230.210

172.172.230.211

127.0.0.1 (回环地址)


2.如果为127.0.0.1:25这个表示监听本机的loopback地址的25端口

(如果某个服务只监听了回环地址,那么只能在本机进行访问,无法通过tcp/ip 协议进行远程访问)


3.如果为192.168.1.81:2288这是因为我们在启动的时候指定了192.168.1.81:2288参数,如果不指定的话,会默认监听0.0.0.0:2288


  • Foreign Address

显示与本机端口通信的外部socket

显示规则与Local Address相同

  • State

显示11种链路状态,或者UNKNOWN

(这些状态是按照TCP连接建立的三次握手和TCP连接断开的四次挥手过程来描述的。)

下来补一下这块的计算机网络知识

  1. LISTEN : 监听来自远方TCP端口的连接请求 The socket is listening for incoming connections .
  2. SYN_SENT:发送连接请求SYN后等待匹配的连接请求 The socket is actively attempting to establish aconnection .
  3. SYN_RECV:在收到和发送一个连接请求后等待对方确认 A connection request has been received from the network.
  4. ESTABLISHED:已经建立了链接,数据可以传送给用户 The socket has an established connection .
  5. FIN_WAIT1:主动关闭(activeclose)端应用程序调用close,于是其TCP发出FIN请求主动关闭连接,之后进入FIN_WAIT1状态 The socket is closed, and the connection is shutting down.
  6. CLOSE_WAIT:被动关闭(passiveclose)端TCP接到FIN后,就发出ACK以回应FIN请求(它的接收也作为文件结束符传递给上层应用程序),并进入CLOSE_WAIT. 等待从本地用户发来的连接中断请求 The remote end has shut down, waiting for the socketto close.
  7. FIN_WAIT2:主动关闭端接到ACK后,就进入了FIN-WAIT-2,从远程TCP等待连接中断请求 Connection is closed, and the socket is waiting for a shutdownfrom the remote end.
  8. LAST_ACK:被动关闭端一段时间后,接收到文件结束符的应用程序将调用CLOSE关闭连接。这导致它的TCP也发送一个 FIN,等待对方的ACK.就进入了LAST-ACK,等待原来发向远程TCP的连接中断请求的确认. The remote end has shut down, and the socket is closed. Waiting foracknowledgement.
  9. TIME_WAIT:在主动关闭端接收到FIN后,TCP 就发送ACK包,并进入TIME-WAIT状态。等待足够的时间以确保远程TCP接收到连接中断请求的确认 The socket is waiting after close to handle packets still in the network.
  10. CLOSING:比较少见,等待远程TCP对连接中断的确认 Both sockets are shut down but we still don’t have all our datasent.
  11. CLOSED:被动关闭端在接受到ACK包后,就进入了closed的状态,表示没有任何连接状态 The socket is not being used.
  12. UNKNOWN:未知的Socket状态 The state of the socket is unknown.

notes:

  • SYN: (同步序列编号,SynchronizeSequence Numbers)该标志仅在三次握手建立TCP连接时有效。表示一个新的TCP连接请求。
  • ACK: (确认编号,AcknowledgementNumber)是对TCP请求的确认标志,同时提示对端系统已经成功接收所有数据。
  • FIN: (结束标志,Finish)用来结束一个TCP回话.但对应端口仍处于开放状态,准备接收后续数据。

这一部分摘自

0 人点赞