Linux网络设置与基础服务

描述

Linux 网络设置与基础服务

1  配置网络设置

• 主机名                    hostname

• IP地址/netmask      ifconfig   ;    ip  a

• 路由:默认网关         route  -n

• DNS服务器            cat   /etc/resolv.conf

• 网络连接状态          ss   netstat

• 域名解析                 nslookup     host

• IP 地址

2 ifconfig

 

ifconfig          具体网卡名称         #只显示具体网卡的详细信息(无论该网卡是否使用)
 
ifconfig          -a                 #表示显示所有网卡包括没有启动的网卡

ifconfig          网卡名称   [up|down]      #表示开启或关闭网卡

ifconfig          网络接口    ip地址/[netmask  子网掩码]

ifconfig          网络接口    ip地址[/子网掩码长度]      临时修改网卡名称

ifconfig           ens33:0          地址          #表示虚拟网卡

 

ifconfig 修改IP地址

inconfig  ens33   新的IP地址

 

[root@localhost ~]# ifconfig ens33 192.168.11.8
 

[root@localhost ~]# ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.11.8  netmask 255.255.255.0  broadcast 192.168.11.255
        inet6 fe80:97142343  prefixlen 64  scopeid 0x20
        ether 002950:48  txqueuelen 1000  (Ethernet)
        RX packets 641  bytes 49417 (48.2 KiB)
需要重新连接一下Xshell

 

ifconfig 添加临时IP地址

网络

ifconfig 删除临时IP地址

网络

永久修改IP地址

# vim   /etc/sysconfig/network-scripts/ifcfg-ens33

网络

最好重启#systemctl  restart network

3 修改网卡名

临时修改网卡名称

 

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

 

①先down掉

②修改网卡名

③重启之后,就会消失

 

[root@localhost ~]# ifconfig ens33 down
 
Socket error Event: 32 Error: 10053.

连接另一个网卡ens33登录改名

[root@localhost ~]# ip linkset ens33 name mcb
[root@localhost ~]# ifconfig mcb up
[root@localhost ~]# ifconfig mcb 
mcb: flags=4163  mtu 1500
        inet 192.168.11.8  netmask 255.255.255.0  broadcast 192.168.11.255
        inet6 fe80:91502b3d  prefixlen 64  scopeid 0x20
        ether 002950:48  txqueuelen 1000  (Ethernet)
        RX packets 1870  bytes 129554 (126.5 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 536  bytes 63192 (61.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@localhost ~]# 

 

网络

4 永久修改网卡名

# vim /etc/default/grub

网络

网络

reboot/init 6  成功了

网络

网络

ethool

用于查看和修改以太网接口驱动程序和硬件参数的工具

 

ethtool eth0            #显示以太网接口的状态信息
ethtool -i eth0         #查看以太网接口的驱动程序信息
ethtool -S eth0         #显示以太网接口的统计信息
ethtool -p eth0         #让ens33网口的灯快速闪烁,可分辨现实中的eth0网络接口

 

5 实操:双卡配置(实验没有搞完)

①先在虚拟机设置里添加一张网卡

②将ens33的配置文件拷给ens36

 

[root@localhost ~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cp ifcfg-ens33 ifcfg-ens36
[root@localhost network-scripts]# vim ifcfg-ens36


TYPE=Ethernet
BOOTPROTO=static
NAME=ens36
DEVICE=ens36
ONBOOT=yes
IPADDR=192.168.91.110
NETMASK=255.255.255.0
GATEWAY=192.168.91.2


[root@localhost network-scripts]# systemctl restart network



[root@localhost ~]# ping 192.168.11.20
PING 192.168.11.20 (192.168.11.20) 56(84) bytes of data.
64 bytes from 192.168.11.20: icmp_seq=1 ttl=64 time=0.058 ms
64 bytes from 192.168.11.20: icmp_seq=2 ttl=64 time=0.051 ms
64 bytes from 192.168.11.20: icmp_seq=3 ttl=64 time=0.050 ms
64 bytes from 192.168.11.20: icmp_seq=4 ttl=64 time=0.049 ms
64 bytes from 192.168.11.20: icmp_seq=5 ttl=64 time=0.048 ms

 

③进行ens36配置文件修改

④测试

6 IP

ip  link   数据链路层

 

[root@localhost ~]# ip link    #断网或拔掉网线状态
1: lo:  mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT qlen 1
    link/loopback 000000:00 brd 000000:00
2: ens33:  mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether 002950:48 brd ffffff:ff
3: virbr0:  mtu 1500 qdisc noqueue state DOWN mode DEFAULT qlen 1000
    link/ether 52007b:87 brd ffffff:ff
4: virbr0-nic:  mtu 1500 qdisc pfifo_fast master virbr0 state DOWN mode DEFAULT qlen 1000
    link/ether 52007b:87 brd ffffff:ff
[root@localhost ~]# 

 

ip addr 网络层

 

[root@localhost ~]# ip addr
#可以写成ip a,更高端的查看网卡信息
[root@localhost ~]# ip address add 172.19.8.211/16 dev ens33
#添加新的虚拟ip地址
[root@localhost ~]# ip address add 10.0.0.88/24 dev ens33    #临时添加IP
[root@localhost ~]# ip address del 10.0.0.8/24 dev ens33


ip addr     #显示和管理网络接口信息
ip address add ip地址/子网掩码 dev 网卡名
#临时增加网卡

ip address add ip地址/子网掩码 dev ens33 label ens33:1
#临时增加虚拟网卡

ip address del ip地址/子网掩码 dev 网卡名
#临时删除网卡

ip address del ip地址/子网掩码 dev ens33 label ens33:1
#临时删除虚拟网卡



 

ip add del

 

ip address del 10.0.0.8/24 dev ens33
 
#先加新IP,再删除旧的IP
 
#ip  a



 

ip route   路由

 

[root@localhost ~]# ip route 
default via 192.168.11.2 dev ens33 proto static metric 100 
192.168.11.0/24 dev ens33 proto kernel scope link src 192.168.11.20 metric 100 
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1 

 

route-n

网络

7 添加删除路由

路由第一行代表意思

Destnation

Gateway

Genmask 

Flags

Metric

Ref  

Use

Iface

①route add -net 10.0.0.0/8 gw 192.168.227.2

临时添加一条去往10.0.0.0段路由,通过网关192.168.227.2转发

②route del -net 10.0.0.0/8

删除去往10.0.0.0段路由

③route add -net 0.0.0.0(default) gw 192.168.227.2

添加默认路由

④永久添加路由

 

[root@localhost ~]# vim /etc/sysconfig/network-scripts/route-ens33
10.0.0.0/24 via 192.168.11.11
[root@localhost ~]# systemctl restart network

 

8 ss/netstat——网络连接状态

 

服务不能用,ftp、httpd网页无法访问
 
1.首先ping  是否能通;看网络是否通,防火墙是否关闭

2.查看服务是否开启systemctl status  服务名

3.ss   或  netstat  看服务端口是否被占用

4.查看服务的配置文件是否正确

 

netstat

查看网络连接情况

-a    显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)。
-n    拒绝显示别名,以数字的形式显示相关的主机地址、端口等信息。
-t     查看TCP协议相关的信息。
-u    显示UDP协议相关的信息。
-r    显示路由表信息。
-l    显示处于监听状态(Listen)的网络连接及端口信息。
-p    显示与网络连接相关联的进程号、进程名称信息(该选项需要root权限)

ss

查看网络连接情况

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

区别

ss  更靠近内核(快)

netstat更靠近用户 (慢)

9 traceroute  IP地址

跟踪数据包,路由跟踪

网络

10 nslookup

域名解析,验证dns服务器是否可以解析域名;dns域名解析的作用是:将域名翻译成ip地址。同时其他命令也可以查看,比如:dig,host,ping等。

网络

11 修改主机名

hostname   临时修改主机名

 

[root@localhost ~]# hostname  mg
 

登出

Connection closed.

Disconnected from remote host(7-64-2) at 1811.


Last login: Tue Jan  9 1812 2024 from 192.168.11.1
[root@mg ~]# ^C
[root@mg ~]#  
重启就消失

 

hostname  永久修改主机名

①指令修改

网络

②文件修改

网络

12 tcpdump-数据抓包

一个强大的网络协议分析器,它主要用于监控和捕获网络流量数据包,并能够以易于阅读的格式显示这些信息。在Linux和其他类Unix系统中广泛使用,是网络管理员、安全专家和开发者进行网络故障排查、性能分析以及安全审计的重要工具

①tcpdump -i ens33  指定查看 ens33 网卡

网络

②tcpdump -D  查看网卡

网络

③监听特定地址的包

④抓取来源于192.168.241.22 目的地址是192.168.241.11的包

 

#查看系统当前所有网卡的信息
#tcpdump -D

#监听特定网卡
tcpdump -i ens33

#监听特定主机,监听主机192.168.11.12的通信包,注意:出、入的包都会被监听
tcpdump host 192.168.11.12

#特定来源的通信
tcpdump src host hostname或ip地址/子网掩码
#特定目标地址的通信
tcpdump dst host hostname或ip地址/子网掩码
#如果不指定src跟dst,那么来源或者目标是hostname或ip地址/子网掩码的通信都会被监听
tcpdump host hostname或ip地址/子网掩码

#捕获从ip地址为192.168.11.12的主机发送到ip地址为192.168.11.9的主机的icmp报文
tcpdump -i eth0 -nn icmp and src host192.168.12 and dst host 192.168.11.9

#捕获特定端口的数据包
tcpdump port 1000

#监听TCP/UDP,服务器上不同服务分别用了TCP、UDP作为传输层,假如只想监听TCP的数据包
tcpdump tcp

#来源主机+端口+TCP,监听来自主机192.168.11.12在端口22上的TCP数据包
tcpdump tcp port 22 and src host 192.168.11.12

#监听特定主机之间的通信
tcpdump ip host 172.16.12.10 and 192.168.11.12

#192.168.11.12和除了192.168.11.9之外的主机之间的通信
tcpdump ip host 1192.168.11.12 and ! 192.168.11.9

#在eth1接口上抓取前100个源IP地址在172.16.12.0/24网段内、目标端口不为SSH的TCP 数据包,并将这些数据包保存到target.cap文件中,以便后续分析和处理
tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 172.16.12.0/24 
-w ./target.cap
(1)tcp: ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数
据报的类型
(2)-i eth1 : 只抓经过接口eth1的包
(3)-t : 不显示时间戳
(4)-s 0 : 抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包
(5)-c 100 : 只抓取100个数据包
(6)dst port ! 22 : 不抓取目标端口是22的数据包
(7)src net 172.16.12.0/24 : 数据包的源网络地址为172.16.12.0/24
(8)-w ./target.cap : 保存成cap文件,方便用wireshark分析

#限制抓包的数量,如下,抓到1000个包后,自动退出
tcpdump -c 1000

 

13 bond多网卡绑定

主备替用:单点故障

双主模式:分摊流量

1  直接给两块网卡设置同一IP地址是不可以的

2  将多块网卡绑定同一IP地址对外提供服务,实现利用率或者负载均衡

3 虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址

① 虚拟机再添加一张网卡

② 切换到配置文件目录下

③ 进入bond0配置

④修改ens33  ens36

⑤重启网卡

⑥测试

 

[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#setenforce 0
setenforce: SELinux is disabled
[root@localhost ~]#cd /etc/sysconfig/network-scripts
[root@localhost network-scripts]#ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.11.9  netmask 255.255.255.0  broadcast 192.168.11.255
        inet6 fe80:5a32fc95  prefixlen 64  scopeid 0x20
        ether 002950:c4  txqueuelen 1000  (Ethernet)
        RX packets 115353  bytes 167503435 (159.7 MiB)
        RX errors 1354  dropped 7209  overruns 0  frame 0
        TX packets 80916  bytes 4458103 (4.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 19  base 0x2000  

ens37: flags=4163  mtu 1500
        ether 002950:ce  txqueuelen 1000  (Ethernet)


[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-bondo
[root@localhost network-scripts]#vim ifcfg-bond0

 

网络

[root@localhost network-scripts]#vim ifcfg-ens33

网络

[root@localhost network-scripts]#vim ifcfg-ens37

网络

[root@localhost network-scripts]#systemctl restart network

网络

若不断网#cd /etc/sysconfig/network-scripts

#  ls

#   rm-rf ifcfg-bondo

再次连接起来

网络

查看bind0状态

网络

网络

用另外虚拟机ping一下bond0的IP地址

网络

14 查看一下bond0状态

第一种情况

网络

网络

第二种状态

网络

网络

网络

bond网卡绑定 方法二  基本上用不上

 

centos8:    nmcli实现bonding
 

#创建新连接static ,指定静态IP,不自动连接
nmcti con add con-name static   ifname eth0 autoconnect no type Ethernet 
ipv4.addresses 172.25.X.10/24 ipv4.gateway   172.25.X.254

nmcli connection modify ens33 ipv4.addresses 192.168.91.100/2
nmcli connection up ens33
#添加bonding接口
nmcli con add type bond con-name mybond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.91.123/24 
#添加从属接口
nmcli con add type bond-slave ifname ens33 master bond0
nmcli con add type bond-slave ifname ens36 master bond0
#注:如无为从属接口提供连接名,则该名称是接口名称加类型构成
#要启动绑定,则必须首先启动从属接口
nmcli con up bond-slave-ens33
nmcli con up bond-slave-ens36
#启动绑定
nmcli con up mybond0

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分