linux——基础网络设置

概述

Linux系统本身就被设计为具有强大的网络与通信功能,它支持 TCP/IP , ATM , IPX/SPX , X.2.5 , Frame-relay , AppleTalk等多种网络通讯协议,并将协议的实现加入到Linux内核中,提供了高效的网络通信处理能力
查看及测试网络配置是管理Linux网络服务的第一步

查看网络设置

使用ifconfig 命令查看网络接口地址

主机的网络接口卡(网卡)通常称为"网络接口"。

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

[root@localhost ~]# ifconfig 
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.197.161  netmask 255.255.255.0  broadcast 192.168.197.255
      inet6 fe80::1d30:11ba:dcc1:394a  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c3:77:97  txqueuelen 1000  (Ethernet)
    ...以下省略内容
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
    ...以下省略内容
'ens33:第一块以太网卡的名称'
' inet 192.168.197.161  :IP地址' 
'netmask 255.255.255.0   :子网掩码'
' broadcast 192.168.197.255 :广播地址'
'ether 00:0c:29:c3:77:97  : MAC地址'
'lo:虚拟的回环接口,lo 是 loopback 的缩写,不是真正的网络接口,而是一个虚拟的网络接口,lo 的IP地址默认为 “127.0.0.1”,回环地址通常仅用于对本机的网络测试'

查看所有网络接口信息

[root@localhost ~]# ifconfig -a
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.197.161  netmask 255.255.255.0  broadcast 192.168.197.255
        inet6 fe80::1d30:11ba:dcc1:394a  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:c3:77:97  txqueuelen 1000  (Ethernet)
        RX packets 670908  bytes 906530069 (864.5 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 257925  bytes 25819625 (24.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
'TX  RX  表示通过该网络接口发出和接收的数据包个数,流量等信息'
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
...省略内容

查看指定网络接口信息

  当只需查看其中一个网络接口的信息时,可以使用网络接口的名称作为ifconfig命令的参数,不论该网络接口是否处于激活状态
[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.197.161  netmask 255.255.255.0  broadcast 192.168.197.255
      ...以下省略内容 

使用 hostname命令查看主机名称

查看当前主机名

[root@localhost ~]# hostname
localhost.localdomain
'localhost:主机名'
'localdomain:域'


修改当前主机名

[root@localhost ~]# hostnamectl set-hostname wang
[root@localhost ~]# su
[root@wang ~]# 

使用route命令查看路由表条目

直接执行route命令可以查看到当前主机中的路由表信息
    linux系统中的路由表决定着从本主机向其他主机,其他网络发送数据的去向,是排除网络故障的关键信息

[root@ddd ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         gateway         0.0.0.0         UG    100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.197.0   0.0.0.0         255.255.255.0   U     100    0        0 ens33
'Destination列对应目标网段的地址'
'Gateway列对应下一跳路由器地址'
'Genmask列对应子网掩码'
'Iface列对应发送数据的网络接口'
'目标网段为default时,表示此行时默认网关记录'

使用netstat命令查看网络连接情况

netstat命令

    查看系统的网络连接状态,路由表,接口统计等信息,是了解网络状态及排除网络服务故障的有效工具

    'netstat命令基本格式'
    netstat [选项]

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


    通常使用“-ntap”组合选项,以数字形式显示当前系统中所有的TCP连接信息,同时显示对应的进程信息。

    结合管道符号使用“grep”命令,还可以在结果中过滤出所需要的特定记录。

    [root@localhost ~]# netstat -ntap 	'以数字形式显示当前系统中所有的TCP连接信息,同时显示对应的进程信息。'
    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 127.0.0.1:25            0.0.0.0:*               LISTEN      1235/master         
    tcp        0     52 192.168.197.161:22      192.168.197.1:61980     ESTABLISHED 1574/sshd: root@pts 
    tcp6       0      0 :::111                  :::*                    LISTEN      1/systemd     	'::::这些表示ipv6的IP地址'      
    ...省略部分内容


    [root@localhost ~]# netstat -ntap | grep 22 '过滤出22端口'
    tcp        0      0 192.168.122.1:53        0.0.0.0:*               LISTEN      1340/dnsmasq        
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      984/sshd            
    tcp        0     36 192.168.197.161:22      192.168.197.1:61980     ESTABLISHED 1574/sshd: root@pts 
    tcp6       0      0 :::22                   :::*                    LISTEN      984/sshd   


    [root@localhost ~]# netstat -r		'显示路由信息'
    Kernel IP routing table
    Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
    default         gateway         0.0.0.0         UG        0 0          0 ens33
    192.168.122.0   0.0.0.0         255.255.255.0   U         0 0          0 virbr0
    192.168.197.0   0.0.0.0         255.255.255.0   U         0 0          0 ens33

测试网络连接

使用ping命令测试网络连通性

测试网络连通性

命令基本格式
ping [选项] 目标主机

[root@localhost ~]# ping 192.168.100.3
PING 192.168.100.3 (192.168.100.3) 56(84) bytes of data.
64 bytes from 192.168.100.3: icmp_seq=1 ttl=128 time=0.524 ms
64 bytes from 192.168.100.3: icmp_seq=2 ttl=128 time=0.244 ms
64 bytes from 192.168.100.3: icmp_seq=3 ttl=128 time=0.435 ms
64 bytes from 192.168.100.3: icmp_seq=4 ttl=128 time=0.400 ms
64 bytes from 192.168.100.3: icmp_seq=5 ttl=128 time=0.497 ms
^C
--- 192.168.100.3 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4001ms
rtt min/avg/max/mdev = 0.244/0.420/0.524/0.098 ms
'按Ctrl C 组合键终止ping测试'
'反馈目标主机不可达:可能目标地址不存在或主机已经关闭'
'反馈 网络不可达:表示没有可用的路由记录,如网关,无法到达目标主机所在网络'
'反馈 请求超时:表示数据到达对方,但回不来'

使用traceroute命令跟踪数据包

测试从当前主机到目标主机之间经过的网络节点

对于无法响应的节点,连接状态将显示为*

traceroute命令比ping命令更准确的定位网络连接的故障点(中断点),执行速度也因此比ping命令慢

网络测试中,先用ping,若发现网络连接故障,在使用traceroute命令跟踪查看故障节点

命令基本格式

   traceroute 目标主机地址

使用nslookup命令测试DNS域名解析

nslookup命令

    测试DNS域名解析,将域名解析为IP地址

命令基本格式
    nslookup 目标主机地址 [DNS服务器地址]
    centos 7显示结果
    [root@localhost ~]# nslookup www.baidu.com
    Server:         192.168.197.2
    Address:        192.168.197.2#53

    Non-authoritative answer:
    www.baidu.com   canonical name = www.a.shifen.com.
    Name:   www.a.shifen.com
    Address: 180.101.49.11
    Name:   www.a.shifen.com
    Address: 180.101.49.12
    Windows 显示
    C:\Users\wangermazi>nslookup www.baidu.com
    服务器:  ns.gwbnnj.net.cn
    Address:  211.162.31.80

    非权威应答:
    名称:    www.a.shifen.com
    Addresses:  182.61.200.7
              182.61.200.6
    Aliases:  www.baidu.com

使用网络配置命令

设置网络参数的方式
临时配置:使用命令调整网络参数

临时修改,一般都是做维护的时候使用

简单,快速,可直接修改运行中的网络参数

一般只适合在调试网络的过程中使用

系统重启以后,所做的修改将会直接失效

固定设置:通过配置文件修改网络参数

修改各项网络参数的配置文件
适合对服务器设置固定参数时使用
需要重载网络服务或者重启以后才会生效

设置网络接口参数 ifconfig

设置网络接口的IP地址,子网掩码

ifconfig 接口名 IP地址 [netmask 子网掩码]
ifconfig 网络接口 IP地址[/掩码长度]

例如:
[root@localhost ~]# ifconfig ens33 10.10.10.10/24
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.10.10.10  netmask 255.255.255.0  broadcast 10.10.10.255
..省略内容
    或者
[root@localhost ~]# ifconfig ens33 12.12.12.12 netmask 255.255.255.0

禁用或者重新激活网卡

ifconfig 网络接口 up
ifconfig 网络接口 down
例如
[root@localhost ~]# ifconfig ens33 down		'临时禁用ens33网卡'
[root@localhost ~]# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 596  bytes 51824 (50.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 596  bytes 51824 (50.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:ac:c5:4f  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
    
[root@localhost ~]# ifconfig ens33 up		'重新激活ens33网卡'
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::39ab:1caa:1fd3:5019  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:78:56:a8  txqueuelen 1000  (Ethernet)
        RX packets 559  bytes 69546 (67.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 811  bytes 143394 (140.0 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 668  bytes 58080 (56.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 668  bytes 58080 (56.7 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:ac:c5:4f  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

为网卡绑定虚拟接口

    在对服务器网络进行调试的过程中,有时候需要临时在同一个网卡上使用一个新的IP地址,但是又不能够覆盖掉原本的IP地址而导致服务程序不可用。

    此时可以为网卡绑定一个虚拟的网络接口,然后在位虚拟接口配置新的IP地址(相当于一个网卡配置多个IP地址)

设置虚拟网络接口的命令格式
ifconfig 接口名:序号 IP地址
[root@localhost ~]# ifconfig ens33:1 11.11.11.11
[root@localhost ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.10.10  netmask 255.255.255.0  broadcast 192.168.10.255
        inet6 fe80::39ab:1caa:1fd3:5019  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:78:56:a8  txqueuelen 1000  (Ethernet)
        RX packets 675  bytes 85246 (83.2 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 827  bytes 145682 (142.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens33:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500	'添加成功'
        inet 11.11.11.11  netmask 255.0.0.0  broadcast 11.255.255.255
        ether 00:0c:29:78:56:a8  txqueuelen 1000  (Ethernet)

使用route命令设置路由记录

使用route命令不仅可以用于查看路由表信息,还可以用来添加,删除静态的路由表条目,其中也包括设置默认网关地址(默认网关记录是一条特殊的静态路由条目)

默认网关的IP地址应该与本机其中一个接口的IP地址在同一个网段内

添加到指定网段的路由记录

route add -net 网段地址 gw IP地址
例如	
[root@localhost ~]# route		'原本的路由条目'
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.10.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
[root@localhost ~]# route add -net 192.168.30.0/24 gw 192.168.10.10		'添加静态路由,本机访问另一个网段192.168.30.0/24的数据都发给192.168.10.10'
[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.10.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.30.0    localhost.local 255.255.255.0   UG    0      0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

删除到指定网段的路由记录

route del -net 网段地址

例如
[root@localhost ~]# route del -net 192.168.30.0/24		'删除静态路由'
[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface

11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.10.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

向路由表中添加默认网关记录

route add default gw IP地址

[root@localhost ~]# route add default gw 192.168.10.30		'添加到192.168.10.30的默认网关记录'
[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
 default     192.168.10.30   255.255.255.255   UGH   0      0        0 ens33
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.10.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

删除路由表中的默认网关记录

route del default gw IP地址

[root@localhost ~]# route del default gw 192.168.10.30		'删除到192.168.10.30的默认网关记录'
[root@localhost ~]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
11.0.0.0        0.0.0.0         255.0.0.0       U     0      0        0 ens33
192.168.10.0    0.0.0.0         255.255.255.0   U     100    0        0 ens33
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0



同一个主机的路由表中只应有一条默认网关记录,否则会导致主机的网络了解出现故障

修改网络配置文件

网络接口配置文件

/etc/sysconfig/network-scripts/目录下
    文件名格式为“ifcfg-xxx”
    ifcfg-ens33:第一块以太网卡的配置文件
    …
    回环接口lo的配置文件是“ifcfg-lo”

[root@localhost ~]# ls /etc/sysconfig/network-scripts/ifcfg-*
/etc/sysconfig/network-scripts/ifcfg-ens33  /etc/sysconfig/network-scripts/ifcfg-lo


[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
..省略部分内容
BOOTPROTO="dhcp"		'设置网络接口的配置方式,值为 static 表示使用静态指定的IP地址,值为 dhcp 表示 通过dhcp的方式动态获取地址'
DEVICE="ens33"		'设置网络接口的名称'
ONBOOT="yes"		'设置网络接口是否在Linux系统启动时激活'
IPADDR="192.168.158.165"		'设置网络接口的IP地址'
NETMASK="255.255.255.0"		'设置网络接口的子网掩码'
GATEWAY="192.168.158.1"		'设置网络接口的默认网关地址'

启动,禁用网络接口配置

重启network网络服务

[root@localhost ~]# systemctl restart network
    或者
[root@localhost ~]# service network restart


禁用,启用网络接口

[root@localhost ~]# ifdown ens33		'关闭网卡'
成功断开设备 'ens33'。
[root@localhost ~]# ifup ens33		'启用网卡'

主机名称配置文件

/etc/sysconfig/network文件 , centos6系统中再这
    保存全局网络设置,主要包括主机名信息

/etc/hostname文件,centos7系统中在这

域名解析配置文件

/etc/resolv.conf文件

    保存本机需要使用的DNS服务器的IP地址

    对该文件所做的修改会立刻生效

    Linux系统中最多可以指定3个(第三个以后将被忽略)不同的DNS服务器地址,优先使用第一个DNS服务器

    [root@localhost ~]# vim /etc/resolv.conf
    search localdomain		'默认的搜索域(域名后缀),即,当访问主机localhost 时,相当于访问 localhost.localdomain'
    nameserver 100.100.1.30		
    nameserver 100.100.100.30

本地主机映射文件

/etc/hosts文件

    保存主机名与IP地址的映射记录

    一般用来保存经常需要访问的主机的信息

    hosts文件和DNS服务器的比较

        默认情况下,系统首先从hosts文件查找解析记录

        当访问一个未知的域名时,先查找该文件中是否有相应的映射记录,如果找不到在去向DNS服务器查询

        hosts文件只对当前的主机有效

        因为hosts文件只保存在本地

        hosts文件可减少DNS查询过程,从而加快访问速度

        在/etc/hosts文件中添加正确的映射记录(经常访问的一些网站),减少了DNS查询,提高了上网速度

[root@localhost ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
6.6.6.6	www.baidu.com  '这是新添加的,当访问网站www.baidu.com时,就会直接向IP地址211.168.31.80发送web请求,省略了向DNS服务器解析IP地址的过程'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
网络服务器搭建、配置与管理——linux(rhel8、centos8)(微课版)(第4版)》一书从基础到进阶系统地介绍了Linux服务器搭建、配置与管理的相关内容。Linux作为一种常用的操作系统,对于IT从业者来说具有重要的意义。该书从操作系统的基本概念入手,逐步介绍了Linux服务器的安装与配置、网络服务搭建、安全管理、性能调优等内容。 首先,该书详细介绍了如何在RHEL8和CentOS8平台上进行Linux服务器的安装与配置。通过阅读本书,读者可以了解到如何进行系统分区、用户管理、软件包安装等基本操作。同时,本书还对Linux系统的文件系统、磁盘管理、存储管理等进行了深入的讲解,帮助读者全面了解Linux系统的存储管理。 在网络服务搭建方面,该书介绍了如何配置和管理常见的网络服务,包括DNS服务、DHCP服务、Web服务、FTP服务等。此外,书中还对网络安全相关的内容进行了全面的介绍,包括防火墙配置、访问控制、日志管理等方面。 此外,书中还介绍了如何对Linux服务器进行性能调优与故障排查。通过学习本书,读者可以了解到如何监控系统性能、优化内存、调整文件系统等内容,从而提高服务器的稳定性和性能。 总之,《网络服务器搭建、配置与管理——linux(rhel8、centos8)(微课版)(第4版)》是一本全面系统的Linux服务器管理指南,对于希望深入了解和掌握Linux服务器管理的读者来说是一本宝贵的参考书。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值