Linux网络基础


一、Linux网络配置

将Linux主机接入到网络,需要配置网络相关设置,一般包括以下内容:

  • 主机名
  • IP地址,掩码
  • 网关
  • DNS服务器

修改网卡名称
网卡名字解释:“ens33”中的“en”是“EtherNet”的缩写,表示网卡以太网(局域网中的一种互联网
类型为以太网,“s”表示热插拔插槽上的设备(hot-plug Slot),数字“33”表示插槽编号。
centos 7网络配置文件所在位置/etc/sysconfig/network-scripts
1.临时修改网卡
在这里插入图片描述

ip link set ens36 down   =   ifconfig   网卡名 down    #先将网卡down掉
ip link set ens36 name abc#然后改名
ip link set abc up    =   ifconfig   网卡名 up#最后再启动网卡

2.永久修该网卡名称
在/etc/default/grub下
在这里插入图片描述
再用下面的命令grub2-mkconfig -o /boot/grub2/grub.cfg #重新生成 grub的配置文件
在这里插入图片描述
做完这一步操作,重启之后你会发现,你的机器连不上网络了,如果你通过远程操作的话这时候就会断开连接,这是因为你的网卡名字变了,但网络配置文件中的网卡名字并没有变,所以需要再改网卡名字之前先改网络配置文件,切记!

ifconfig
ifconfig来自于net-tools包,在不带任何选项和参数执行 ifconfig 命令时,将显示当前主机中已启用(活动)的网络接口信息。

命令 含义
ifconfig 具体网卡名称 只显示具体网卡的详细信息
ifconfig -a 显示所有网卡包括没有启动的网卡
ifconfig 网卡名称 IP地址/子网掩码长度 临时加地址
ifconfig ens33:0 地址 表示虚拟网卡
ifconfig -s 简要网卡情况
ifconfig 网卡名 0 取消网卡IP地址

在这里插入图片描述

hostname
查看或修改当前主机名
hostname #查看当前主机名
hostname 主机名#临时修改当前主机名
通过修改/etc/hostname文件来永久修改主机名
只有第一行生效!
通过命令来修改主机名hostnamectl set-hostname 主机名#永久修改主机名
重启才能永久生效

route路由
查看或设置主机中的路由表信息
route -n:将路由记录中的地址信息显示为数字形式。
在这里插入图片描述
路由表主要构成:
Destination: 目标网络ID,表示可以到达的目标网络ID,0.0.0.0/0 表示所有未知网络,又称为默认路由,优先级最低。
Genmask:目标网络对应的netmask
Iface: 到达对应网络,应该从当前主机哪个网卡发送出来
Gateway: 到达非直连的网络,将数据发送到临近(下一个)路由器的临近本主机的接口的IP地址,如果是直连网络,gateway是0.0.0.0
Metric: 开销cost,值越小,路由记录的优先级最高

临时修改:

命令 含义
route add -net 网段地址 gw 下一跳地址 添加 指定网段的路由记录
route del -net 网段地址 删除指定网段的路由记录
route add default gw IP地址 向路由表中添加默认网关记录
route del default gw IP地址 删除路由表中默认的网关记录

在这里插入图片描述
永久添加路由:
通式:目标网段/子网掩码 via 网关
位置:/etc/sysconfig/network-scripts/route-ens33
示例:10.0.0.0/24 via 192.168.91.2
systemctl restart network#重启服务

链接转态
查看网络连接情况 netstat
ss命令::也可以查看网络连接情况,主要用于获取 socket (内核态)统计信息,它可以显示和 netstat 命令类似的输出内容。但 ss 的优势在于它能够显示更多更详细的有关 TCP 和连接状态的信息,而且比 netstat 更快速更高效。当服务器的socket连接数量变得非常大时,无论是使用netstat命令还是直接cat /proc/net/tcp,执行速度都会很慢。

选项:

  • -t: tcp协议相关 只显示 tcp协议
  • -u: udp协议相关 只显示 udp
  • -w: 裸套接字相关
  • -x:unix sock相关
  • -l: listen状态的连接
  • -a: 所有状态
  • -n: 数字格式
  • -p: 相关的程序及PID
  • -e: 扩展的信息
  • -m:内存用量
  • -o:计时器信息
  • -r: --resolve 把 IP 解释为域名,把端口号解释为协议名称。 dns 服务

常用选项:-napt(tcp协议相关);-naup(udp相关)
在这里插入图片描述
ping
测试网络联通性
ping [选项] 目标主机
-c 是发送多少个包
-W 表示等待10秒

traceroute
路由追踪
traceroute IP地址

nslookup
域名解析
nslook 域名

scp
远程同步
scp /opt/passwd lisi@192.168.91.101:/opt/passwd
命令字 本地文件地址 对方用户名@地址冒号对面地址
scp root@192.168.91.101:/opt/passwd /opt/
命令字 对方用户名@地址冒号对面地址 本地地址
ethtool
查看网卡信息
主要应用
ethtool -p ens33 #让ens33 网卡接口快速闪烁

永久修改网络相关配置
配置文件位置
/etc/sysconfig/network-scripts/ifcfg-ens33
在这里插入图片描述
TYPE:接口类型;常见有的Ethernet, Bridge
PROXY_METHOD:是否使用代理
BROWSER_ONLY:仅用于浏览器
BOOTPROTO:激活此设备时使用的地址配置协议,常用的dhcp, static, none, bootp
DEFROUTE:默认路由
IPV4_FAILURE_FATAL: 表示 IPv4 配置失败不会导致致命错误
IPV6INIT:表示启用 IPv6 配置。
IPV6_AUTOCONF:是否自动配置IPv6
IPV6_DEFROUTE:是否将此连接设置为IPv6默认路由,
IPV6_FAILURE_FATAL:指定IPv6配置失败时是否致命
IPV6_ADDR_GEN_MODE:指定IPv6地址生成模式,
NAME:此配置文件应用到的设备
UUID:设备的惟一标识
DEVICE:设备名
ONBOOT:是否在系统启动时激活此连接
IPADDR:静态IP地址
NETMASK:子网掩码
GATEWAY:网关地址
DNS1:指定首选DNS服务器地址
配置完保存后,需要重启网络
systemctl restart network

二、tcpdump 抓包工具

tcpdump    option   proto     dir         type
           选项      协议      数据的方向    抓取的数据类型

proto(协议):

  1. tcp udp icmp
  2. ip ipv6
  3. arp

dir(方向):

  1. src
  2. dst
  3. src and dst

type(类型)

  1. host 主机
  2. net 网段
  3. port 端口
  4. port range 端口范围

tcpdump -i 网卡名称 #指定网络截面送出的数据包

基于IP地址/网段过滤

host
只关心和某个IP地址有关的流量
tcpdump -i ens33 host 192.168.232.10
dst 目的地址
tcpdump -i ens33 dst 192.168.232.10
src 源地址
tcpdump -i ens33 scr 192.168.232.10
网段
tcpdump -i ens33 src net 192.168.23
2.0/24#只关注源地址为192.168.232.0网段的流量

基于端口过滤

port 端口号 tcpdump port 80
tcpdump -i ens33 port 80#过滤80端口的流量
tcpdump -i ens33 port 80 or port 22#过滤80 和 22 端口的流量
tcpdump -i ens33 src portrange 80-8080#过滤源地址为80-8080端口的流量

基于协议

协议种类:ip arp icmp tcp udp,应用层协议不可以直接抓取。
tcpdump -i ens33 icmp#过滤icmp协议的流量

常见参数

  • -i 指定监听网络监听端口
  • -w 将捕获信息保存到文件中,且不分析和打印在屏幕上#tcpdump -i any -w test.cap #将文件后缀改成cap 或者pcap形式可以直接用wireshark打开
  • -r 读取存储的文件
  • -n 不把ip转换成域名,直接显示ip
  • -nn 直接显示ip和端口号
  • -t 在每行的输出中,不显示时间
  • -tt 输出一个时间戳
  • -ttt 每行之间的时间间隔
  • -tttt 详细日期
  • -v 产生详细的输出#v越多 信息越详细
  • -c 指定收取数据包的数量
  • -C 需要与w 配合使用 指定单个文件的大小 百万字节
  • -Q 过滤数据包的方向 in out inout#tcpdump -i ens33 -Q in
  • -q 简洁的输出
  • -D 显示所有可用的列表
  • -s 指定数据包的大小

三、 bond多网卡绑定

将多块网卡绑定同意IP地址对外提供服务,可以实现高可用和负载均衡,直接将两块网卡设置同一IP地址是不可以的。通过bonding,虚拟一块网卡对外提供连接,物理网卡被修改为相同的MAC地址。
配置过程
1.配置bond0
在这里插入图片描述
2.配置ens33和ens36
在这里插入图片描述
重启服务后即可生效
#miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路
#fail_over_mac=1" 永远使用活着的 网卡的mac地址
查看bond0状态
cat /proc/net/bonding/bond0
删除bond0
ifconfig bond0 down
rmmod bonding
在这里插入图片描述

四、DHCP

DHCP,动态主机配置协议,自动分配IP地址。
分配方式:
1.自动分配:分配到一个IP地址后永久使用
2.手动分配:由DHCP服务器管理员专门指定IP地址,例如打印机的网址
3.动态分配:使用完后释放该IP,供其它客户机使用

Linux中利用dhcp分配IP地址过程:
1.首先安装dhcp
yum install dhpc -y
配置文件
在这里插入图片描述
打开配置文件
在这里插入图片描述
在此目录下有配置模板
直接复制过去
修改全局的dns地址配置在这里插入图片描述
在这里插入图片描述

配置完成后启动服务并更改网络配置,并且把网络适配器的DHCP勾选掉在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

固定IP地址的DHCP
在这里插入图片描述
通过mac地址与IP地址绑定,就可以一直使用这个IP地址了。因为mac地址是全球唯一的。

五、时间同步

在这里插入图片描述
chrony软件
时钟同步软件
在拥有网络的环境下,可以直接和阿里云服务器直接进行时间同步,但在内网环境下,并不是所有服务器能够直接连接阿里云服务器,故提出解决方案,搭建一台内网时间服务器,一端连接阿里云服务器,另一端连接内网服务器。
在这里插入图片描述
中间是网址!
修改允许同步的网段
在这里插入图片描述
保存并重启服务
修改内网服务器的同步
在这里插入图片描述
配置成功
在这里插入图片描述

相关推荐

  1. Linux-网络基础

    2024-04-30 17:58:03       21 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-30 17:58:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-30 17:58:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-30 17:58:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-30 17:58:03       20 阅读

热门阅读

  1. GPU系列(一):GPU 与 CPU异同

    2024-04-30 17:58:03       13 阅读
  2. 设计模式(三)、模板方法设计模式

    2024-04-30 17:58:03       13 阅读
  3. 网络安全SQL注入

    2024-04-30 17:58:03       9 阅读
  4. Web安全测试实战:SQL注入与XSS攻击的检测与防御

    2024-04-30 17:58:03       16 阅读
  5. day7 c++

    day7 c++

    2024-04-30 17:58:03      12 阅读
  6. 事件处理模式--reactor原理与实现

    2024-04-30 17:58:03       14 阅读
  7. -CS9053 Section I Assignment 7

    2024-04-30 17:58:03       12 阅读
  8. 如何确定当前项目是采用 Vite 还是 Vue CLI 项目

    2024-04-30 17:58:03       11 阅读