Linux的网络配置命令和网络设置实操

目录

一、网路命令

1.ifconfig

2.hostname

3.route

4.netstat

5.ss(socket statistics)

6.ping

7.nslookup

8.tcpdump

二、实操

1.单个网卡修改

2.双网卡配置

3.bond网卡绑定


一、网路命令

查看Linux基础的网络设置

网关 route -n
IP地址 ifconfig   ip  a
DNS服务器 cat /etc/resolv.conf
主机名 hostname
路由 route  -n
网络连接状态 ss 或 netstat
域名解析 nslookup  host

1.ifconfig

ifconfig查看网卡信息

[root@localhost ~]#ifconfig
ens33: flags=4163  mtu 1500
        inet 192.168.21.10  netmask 255.255.255.0  broadcast 192.168.21.255
        inet6 fe80::20c:29ff:fecb:bd56  prefixlen 64  scopeid 0x20
        ether 00:0c:29:cb:bd:56  txqueuelen 1000  (Ethernet)
        RX packets 16296  bytes 1047585 (1023.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 1396  bytes 108996 (106.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens36: flags=4163  mtu 1500
        inet6 fe80::20c:29ff:fecb:bd60  prefixlen 64  scopeid 0x20
        ether 00:0c:29:cb:bd:60  txqueuelen 1000  (Ethernet)
        RX packets 9122  bytes 557034 (543.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 648 (648.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:49:46:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

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

常用格式:

ifconfig       具体网卡名称     

ifconfig  -a    显示所有的网卡

[root@localhost ~]#ifconfig -a
ens33: flags=4163  mtu 1500
        inet 192.168.21.10  netmask 255.255.255.0  broadcast 192.168.21.255
        inet6 fe80::20c:29ff:fecb:bd56  prefixlen 64  scopeid 0x20
        ether 00:0c:29:cb:bd:56  txqueuelen 1000  (Ethernet)
        RX packets 7676  bytes 510406 (498.4 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 764  bytes 66976 (65.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens36: flags=4163  mtu 1500
        inet6 fe80::20c:29ff:fecb:bd60  prefixlen 64  scopeid 0x20
        ether 00:0c:29:cb:bd:60  txqueuelen 1000  (Ethernet)
        RX packets 1210  bytes 73428 (71.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 648 (648.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10
        loop  txqueuelen 1  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:49:46:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0-nic: flags=4098  mtu 1500
        ether 52:54:00:49:46:6b  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ifconfig    网卡  down  ---------  关闭网卡

ifdown   网卡 ---------------------关闭网卡

ifconfig   网卡     up------------开启网卡

ifup     网卡       --------------------开启网卡

ifconfig ens33:0 ip地址/子网掩码--------设置虚拟网卡

2.hostname

hostname --------查看主机名

hostname  名字--------临时修改主机名

hostnamectl set-hostname--永久修改主机名

vim    /etc/hostname       将名字写入此文件也是永久修改(只有写在第一行才有用)

3.route

route    显示

route   -n------------显示是数字形式

route  add -net 10.0.0.0/8 gw 192.168.91.2  --------添加一条去往10.0.0.0段的路由,通过网关192.168.91.2转发

route  del -net  10.0.0.0/8-------------------删除去往10.0.0.0段的路由

route add  -net  0.0.0.0(default)  gw   192.168.91.2-------------添加默认路由

route   del   -net  0.0.0.0(default) ---------------删除默认路由

4.netstat

netstat:查看网络连接情况

格式:netstat   选项

-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息 
-r:显示路由表信息
-l:显示处于监听(Listening)状态的网络连接及端口信息 
-t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息 
-u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)
 

  1. 一般先ping 看能不能通 如果你网络不通 网络调通 防火墙 抓包

  2. 看看你的服务是否开启 syetemctl status 服务名

  3. ss netstat 看看你的 服务端口是否被占用 一个给一个服务 网页 80 你 apache nginx

  4. 最后看你 服务的配置文件是否正确

5.ss(socket statistics)

ss命令:也可以查看网络连接情况,主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容。

但 ss 的优势在于它能够显示更多更详细的有关 TCP 和UDP连接状态的信息,而且比 netstat 更快速更高效

ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效

格式:ss   选项

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

6.ping

测试网络连通性 ICMP 协议

格式:ping 选项  IP地址

可以加

-C ----是发送多少个包

-W----表示等待10秒

7.nslookup

域名解析

格式:

nslook   域名

举例:

[root@kgc ~]#nslookup www.baidu.com
Server:		8.8.8.8
Address:	8.8.8.8#53

8.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 指定网卡

dst 选项 目的地址

src 选项 源地址

[root@localhost ~]#tcpdump -i ens33  dst 192.168.91.101
[root@localhost ~]#tcpdump -i ens33  src 192.168.91.101

net 选项 tcpdump net 192.168.91.0/24

二、实操

1.单个网卡修改

Linux的网络配置命令和网络设置实操_第1张图片

先在虚拟机中添加一个网络适配器

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

TYPE=Ethernet             网卡的类型 网口 type 可以不背         
BOOTPROTO=static          ip地址获取方式 dhcp static(none)
NAME=ens33                网卡的描述一般和 DEVICE一样
DEVICE=ens33              网卡的名称,必须和 ifconfig 中看到的一样
ONBOOT=yes                开机自启动
IPADDR=192.168.21.100     ip地址
NETMASK=255.255.255.0     子网掩码 PREFIX=24  
GATEWAY=192.168.21.2      网关
DNS1=8.8.8.8              dns服务器1
DNS2=114.114.114.114      dns服务器2

2.双网卡配置

[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.21.110
NETMASK=255.255.255.0
GATEWAY=192.168.21.2
systemctl restart networ    注意:切记要重启网络

3.bond网卡绑定

[root@localhost network-scripts]#cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]#ls
ifcfg-ens33      ifup
ifcfg-ens33-1    ifup-aliases
ifcfg-ens33-2    ifup-bnep
ifcfg-ens33-3    ifup-eth
ifcfg-ens33-4    ifup-ib
ifcfg-ens36      ifup-ippp
ifcfg-lo         ifup-ipv6
ifdown           ifup-isdn
ifdown-bnep      ifup-plip
ifdown-eth       ifup-plusb
ifdown-ib        ifup-post
ifdown-ippp      ifup-ppp
ifdown-ipv6      ifup-routes
ifdown-isdn      ifup-sit
ifdown-post      ifup-Team
ifdown-ppp       ifup-TeamPort
ifdown-routes    ifup-tunnel
ifdown-sit       ifup-wireless
ifdown-Team      init.ipv6-global
ifdown-TeamPort  network-functions
ifdown-tunnel    network-functions-ipv6
[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-bond0
[root@localhost network-scripts]#vim ifcfg-bond0 
TYPE=Ethernet
BOOTPROTO=static
NAME=bond0
DEVICE=bond0
ONBOOT=yes
IPADDR=192.168.21.123
NETMASK=255.255.255.0
GATEWAY=192.168.21.2
DNS1=8.8.8.8
BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1"
[root@localhost network-scripts]#vim ifcfg-ens33

BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
MASTER=bond0
SLAVE=yes
cp ifcfg-ens33 ifcfg-ens36
cp:是否覆盖"ifcfg-ens36"? y
[root@localhost network-scripts]#vim ifcfg-ens36

TYPE=Ethernet
BROWSER_ONLY=no
BOOTPROTO=static
NAME=ens36
DEVICE=ens36
ONBOOT=yes
MASTER=bond0
SLAVE=yes

最后systemctl restart network重启

最后pingy'x

你可能感兴趣的:(linux,运维,服务器)