Linux计算机网络与下载

目录

一、网络的连接查看

1、netstat

2、ss

3、bond绑定

3.1、绑定模式

3.2、绑定案例

bond0操作

4、Linux下的抓包工具

tcpdump

Wireshark

5、web压力测试工具

6、路由追踪命令

二、下载管理

1、常见的软件包类型

2、安装方法

3、yum(dnf)安装

yum相关配置文件

yum源类型

配置本地yum源

4、yum命令语法

子命令(command)

命令选项


一、网络的连接查看

1、netstat

作用

  • 查看本地服务的网络监听状态

  • 查看客户端连接到本地服务的连接状态

语法

netstat  选项 (-anptu)
[root@localhost ~]# netstat -anptu
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:111             0.0.0.0:*               LISTEN      1/systemd           
tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1873/dnsmasq        
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1066/sshd           
tcp        0      0 127.0.0.1:631           0.0.0.0:*               LISTEN      1071/cupsd          
tcp        1      0 192.168.239.128:40384   44.213.238.211:443      CLOSE_WAIT  2605/gnome-shell    
tcp        0      0 192.168.239.128:22      192.168.239.1:61218     ESTABLISHED 3284/sshd: root [pr 
tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd           
tcp6       0      0 :::22                   :::*                    LISTEN      1066/sshd           
tcp6       0      0 ::1:631                 :::*                    LISTEN      1071/cupsd          
udp        0      0 0.0.0.0:44219           0.0.0.0:*                           878/avahi-daemon: r 
udp        0      0 0.0.0.0:5353            0.0.0.0:*                           878/avahi-daemon: r 
udp        0      0 192.168.122.1:53        0.0.0.0:*                           1873/dnsmasq        
udp        0      0 0.0.0.0:67              0.0.0.0:*                           1873/dnsmasq        
udp        0      0 0.0.0.0:111             0.0.0.0:*                           1/systemd           
udp        0      0 127.0.0.1:323           0.0.0.0:*                           892/chronyd         
udp6       0      0 :::5353                 :::*                                878/avahi-daemon: r 
udp6       0      0 :::40389                :::*                                878/avahi-daemon: r 
udp6       0      0 :::111                  :::*                                1/systemd           
udp6       0      0 ::1:323                 :::*                                892/chronyd         

选项

-n, --numeric 
​
显示数字形式地址而不是去解析主机、端口或用户名。
​
-a, --all
​
显示所有的监听或连接状态
​
-p, --program
​
显示连接所属进程的PID和名称。
​
-t,--tcp
​
显示TCP连接
​
-u,--udp
​
显示UDP连接
​
-l
​
查看监听

2、ss

作用

  • 查看本地服务的网络监听状态

  • 查看客户端连接到本地服务的连接状态

语法

ss  选项 (-anptuli)
[root@localhost ~]# ss -anptuli
Netid      State       Recv-Q      Send-Q            Local Address:Port             Peer Address:Port      Process                                                                                                    
udp        UNCONN      0           0                       0.0.0.0:44219                 0.0.0.0:*          users:(("avahi-daemon",pid=878,fd=14))                                                                    
udp        UNCONN      0           0                       0.0.0.0:5353                  0.0.0.0:*          users:(("avahi-daemon",pid=878,fd=12))                                                                    
udp        UNCONN      0           0                 192.168.122.1:53                    0.0.0.0:*          users:(("dnsmasq",pid=1873,fd=5))                                                                         
udp        UNCONN      0           0                0.0.0.0%virbr0:67                    0.0.0.0:*          users:(("dnsmasq",pid=1873,fd=3))                                                                         
udp        UNCONN      0           0                       0.0.0.0:111                   0.0.0.0:*          users:(("rpcbind",pid=847,fd=5),("systemd",pid=1,fd=42))                                                  
udp        UNCONN      0           0                     127.0.0.1:323                   0.0.0.0:*          users:(("chronyd",pid=892,fd=5))                                                                          
udp        UNCONN      0           0                          [::]:5353                     [::]:*          users:(("avahi-daemon",pid=878,fd=13))                                                                    
udp        UNCONN      0           0                          [::]:40389                    [::]:*          users:(("avahi-daemon",pid=878,fd=15))                                                                    
udp        UNCONN      0           0                          [::]:111                      [::]:*          users:(("rpcbind",pid=847,fd=7),("systemd",pid=1,fd=44))                                                  
udp        UNCONN      0           0                         [::1]:323                      [::]:*          users:(("chronyd",pid=892,fd=6))                                                                          
tcp        LISTEN      0           128                     0.0.0.0:111                   0.0.0.0:*          users:(("rpcbind",pid=847,fd=4),("systemd",pid=1,fd=41))
         cubic cwnd:10                                  
tcp        LISTEN      0           32                192.168.122.1:53                    0.0.0.0:*          users:(("dnsmasq",pid=1873,fd=6))
         cubic cwnd:10                                                         
tcp        LISTEN      0           128                     0.0.0.0:22                    0.0.0.0:*          users:(("sshd",pid=1066,fd=3))
         cubic cwnd:10                                                            
tcp        LISTEN      0           128                   127.0.0.1:631                   0.0.0.0:*          users:(("cupsd",pid=1071,fd=7))
         cubic cwnd:10                                                           
tcp        LISTEN      0           128                        [::]:111                      [::]:*          users:(("rpcbind",pid=847,fd=6),("systemd",pid=1,fd=43))
         cubic cwnd:10                                  
tcp        LISTEN      0           128                        [::]:22                       [::]:*          users:(("sshd",pid=1066,fd=4))
         cubic cwnd:10                                                            
tcp        LISTEN      0           128                       [::1]:631                      [::]:*          users:(("cupsd",pid=1071,fd=6))
         cubic cwnd:10

选项

-n, --numeric 
​
显示数字形式地址而不是去解析主机、端口或用户名。
​
-a, --all
​
显示所有的监听或连接状态
​
-p, --program
​
显示连接所属进程的PID和名称。
​
-t,--tcp
​
显示TCP连接
​
-u,--udp
​
显示UDP连接
​
-i,--info
​
查看客户端连接到本地的状态
​
-l
​
查看监听

开启Linux服务的路由功能(了解即可)

vim /etc/sysctl.conf
​
内核参数修改配置文件
​
添加
​
net.ipv4.ip_forward = 1
​
sysctl -p
​
加载配置

3、bond绑定

将多个物理网卡进行排列组合,形成逻辑网卡,网卡的高可用

3.1、绑定模式
  • mode0(平衡负载模式):平时两块网卡均工作,且自动备援,但需要在与服务器本地 网卡相连的交换机设备上进行端口聚合来支持绑定技术。

  • mode1(自动备援模式):平时只有一块网卡工作,在它故障后自动替换为另外的网卡。

  • mode6(平衡负载模式):平时两块网卡均工作,且自动备援,无须交换机设备提供辅助支持。

3.2、绑定案例

服务器有两块网卡 ens33和ens36

ens34操作

TYPE=Ethernet
BOOTPROTO=none
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0
SLAVE=yes

ens35操作

TYPE=Ethernet
BOOTPROTO=none
NAME=ens35
DEVICE=ens35
ONBOOT=yes
MASTER=bond0
SLAVE=yes
bond0操作
TYPE=ethernet
BOOTPROTO=none
NAME=bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=192.168.239.128
PREFIX=24
GATEWAY=192.168.239.2
DNS1=192.168.239.2

添加bond配置文件

vim /etc/modprobe.d/bond.conf
​
alias bond0 bonding
​
options bonding mode=6 miimon=200

关闭网络图形化服务

systemctl stop NetworkManager

重启网络服务

ifdown ens33 && ifupens33 && ifdown ens35 && ifup ens35 &&ifup bond0
​
systemctl restart network #重启会出现启动失败,但是bond绑定是OK的!!!

4、Linux下的抓包工具

tcpdump

语法

tcpdump  -i  网卡名

选项

-c  
​
当 收到多少个报文后退出
​
-i  
​
监听  interface.  如果 不指定 接口, tcpdump 在 系统 的 接口 清单 中,寻找 号码最小, 已经 配置好的 接口 (loopback 除外). 选中的时候会中断连接.
​
-n 
​
不要把地址转换成 名字 (指的是 主机地址, 端口号等)
​
-t 
​
禁止 显示 时戳标志.
​
-v  
​
(稍微多一点)  繁琐的输出.  例如,  显示  IP  数据报  中的  生存周期 和服务类型.
​
-e  
​
显示 链路层报头

额外参数

dst port portNumber
​
抓取目标端口为portNumber的报文
​
port portNumber
​
抓取端口为portNumber的报文
​
src port portNumber
​
抓取源端口为portNumber的报文

案例

抓取客户端访问本机80号端口的1000个报文

tcpdump -tn dst port 80 -c 1000 -i bond0 
Wireshark

5、web压力测试工具

ab -c 100 -n 2000 http://192.168.1.254/

6、路由追踪命令

traceroute  目标地址或域名

二、下载管理

1、常见的软件包类型

1.rpm包:.rpm为后缀,红帽系列操作系统(RedHat,CentOS,OpenSUSE)主要的软件包封装格式,已经做好默认设置,如安装路径,配置文件存放路径,需要手动的解决依赖关系。(相关命令:rpm,yum,dnf)

2.deb包:.deb为后缀,debian系列操作系统(debian,Ubuntu,kali)主要的软件包封装格式,已经做好默认设置,如安装路径,配置文件存放路径等,需要手动的解决依赖关系。(相关命令:dpkg,apt[-get])

依赖关系:安装软件包所需的基础环境

3.二进制包:一般以.bin为后缀,直接被计算机执行安装。

4.源码包:一般C语言(高级语言中最底层的语言,一般结合汇编进行驱动编写)编写,安装前需要编译为二进制包;配置【如,安装路径,配置文件路径,运行用户,运行组,功能模块】--->编译--->安装;文件比较集中,便于后期进行维护与管理。

2、安装方法

使用独立的rpm包安装

需要下载对应的rpm包,一般在centos系统镜像中存在大量的rpm包

rpm命令使用方法

zip-0-11.el7.x86_64.rpm

软件名.版本号.安装平台.安装架构平台的位数(32位,x86或者64位,x86_64).rpm

已安装软件包查看选项

-q:查看指定rpm包是否安装;rpm -q 软件名
​
-qa 【all】:查看系统中所有已安装的软件包;rpm -qa [| grep 软件名]
​
-qi 【infomation】:查看已安装软件包的开发信息;rpm -qi 软件名
​
-ql  【list】:查看已安装软件包的安装路径及生成的文件;rpm -ql 软件名
​
-qf 【find】:查看命令由哪个软件包安装;which 命令字  rpm -qf 命令的绝对路径;常用于:系统中没有对应指令且不知道由哪个软件包安装生成
​
-qc:查看已安装软件的配置文件;rpm -qc 软件名;一般情况下,使用rpm安装的应用程序的配置文件都存储在/etc/[应用程序的名称]
​
-qd:查看已安装软件的帮助文档信息;rpm -qd 软件名

未安装软件包查看选项

-qpi:查看未安装的软件包开发信息;rpm -pqi 软件包名称(全格式)
​
-qpl:查看未安装软件包的安装路径及生成文件;rpm -pql 软件包名称(全格式)

安装、升级、卸载选项

-i 【install】:安装软件包;rpm -ivh /path/软件包名称(全格式)
​
-v:【verify】详细显示安装过程
​
-h:【human】人性化显示
​
-U:【update】升级软件包;rpm -Uvh 软件包名称
​
-e:【exclude】卸载已安装软件包;
​
--nodeps:忽略依赖关系的进行卸载、升级或安装

特殊安装

#将所有相关软件包放到同一目录下
​
rpm -ivh *

3、yum(dnf)安装

可以自动解决依赖关系

  • yum相关配置文件

yum源配置文件

指定yum程序运行时查找软件包的存储路径

/etc/yum.repos.d

yum程序配置文件

yum程序运行时的运行配置

/etc/dnf/dnf.conf

缓存保存路径

/var/cache/dnf
  • yum源类型

本地yum源

利用本地存在的软件包路径

file://localPath(绝对路径)【路径下要包含“repodata(包含rpm包的元数据)”目录】

网络yum源

利用网络存储的软件包路径

http://域名/Path #不常用
​
https://域名/Path
​
ftp://域名/Path  #不常用

常见网络yum源

#网易yum源
​
​
​
#阿里云yum源
 tee /etc/yum.repos.d/alicloud.repo << 'EOF'
[alicloud-os]
name=Alibaba Cloud OS
baseurl=https://mirrors.aliyun.com/rockylinux/8/BaseOS/x86_64/os/
enabled=1
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockylinux
 
[alicloud-appstream]
name=Alibaba Cloud AppStream
baseurl=https://mirrors.aliyun.com/rockylinux/8/AppStream/x86_64/os/
enabled=1
gpgcheck=0
gpgkey=https://mirrors.aliyun.com/rockylinux/RPM-GPG-KEY-rockylinux
EOF
​
#epel源
​
yum -y install epel-release

常见开源镜像站

清华大学
​
https://mirrors.tuna.tsinghua.edu.cn/help/centos/
​
网易开源镜像站
​
http://mirrors.16com/
​
阿里云
​
  • 配置本地yum源
cd /etc/yum.repos.d
[root@localhost yum.repos.d]# rm -rf *
vim local.repo
[local]
name=local  #描述信息
baseurl=file:///mnt/AppStream  # 指定软件包及其元数据存储路径
enabled=1  #是否使用该源,0表示不使用,1表示使用
gpgcheck=0  #(一般使用不验证的方式) [gpgcheck=1]
gpgkey=keyPath
​
################################
yum clean all
​
yum makecache 
​
mount  /dev/sr0 /mnt

4、yum命令语法

yum [options] command [package ...]
  • 子命令(command)
install [软件包名] [--downloadonly]
#安装【只下载】
remove [软件包名]
#卸载
list
#查看yum源中的软件包列表
update [软件包名]
#更新所有软件包
yum clean all
#清空元数据缓存
yum makecache 
#生成元数据缓存
  • 命令选项
-y:非交互

交互式安装:yum install 软件名

Is this ok?
​
y
​
安装
​
n
​
不下载不安装

非交互式安装:yum -y install 软件名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值