前言
这篇文章开始学习Linux的网络管理,通过这篇文章带大家了解,怎么在Linux中查看自己的网卡,怎么通过配置文件配置自己的网络、IP,以及怎么查看自己的IP,了解获取IP的方式,最后完成一个服务器的初始化。
网卡的存储位置(查看网卡)
网卡的存储位置在/etc/sysconfig/network-scripts/
ifcfg-ens33是我们的网卡, ifcfg-ens32, ifcfg-ens34等等都是网卡,可以通过自己的机器用该命令进行查看。
NetworkManager服务
网络管理器(NetworkManager)是一个动态网络的控制器与配置系统,它用于当网络设备可用时保持设备和链接开启并激活。
默认情况下,CentOS/RHEL 7已安装网络管理器,并处于启用状态。
查看网络管理程序状态:systemctl status NetworkManager。
查看网络子管理程序的状态:systemctl status network。
在Active一行中可以看到NetworkManager程序是运行状态。
网络子管理程序的状态也是绿色运行状态。
查看网络连接状态
可以通过命令:nmcli device 查看网络的连接状态
如果没有这个命令,可以执行安装yum -y install NetworkManager
找到ens33也就是自己网卡名这行,查看网络连接状态,此时是断开状态。
在设置界面选择有线连接,连接好网络。
此时再查看网络连接状态,看到网络已经连接。
当然今天我们不是只需要学怎么连接网络,是需要学习配置网络,以上是带大家了解网络连接,这些准备工作做好之后,就开始我们的网络配置的学习吧。
配置网卡参数
网络参数的存储位置为/etc/sysconfig/network-scripts/ifcfg-ens33,也就是网卡的配置文件我的是ens33可能大家的不一样,以自己机器为主。
首先需要备份一下该文件防止刚开始学习改错了导致电脑出现问题。
先备份网卡配置文件,再修改
cp /etc/sysconfig/network-scripts/ifcfg-ens33 /tmp //将网卡配置文件备份到tmp目录下
查看本机的自动获取的IP
记住这个IP今天只教大家学习怎么配置,先不学习那些是可以用的IP,所以接下来的配置的IP使用自动获取的IP。
编辑网卡配置文件
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=dabfc269-89d8-4332-8615-564735eb90bd
DEVICE=ens33
ONBOOT=no
这里忽略IPV6的配置,下面介绍一下需要用到的一些字段的含义。
ONBOOT=yes | 是否开机启用该设备(网卡) |
BOOTPROTO=none |
//获取地址的方法手动(none) 静态(static) 自动(DHCP)以后实验都用自动获取。 DHCP:动态主机配置协议。 |
IPADDR=192.168.79.128 | IP地址是一台主机在网络中的标识。同一个网络可以直接通信。用来定位主机 |
NETMASK=255.255.255.0 | 网络掩码是来定义网络的,掩码分两部分 |
GATEWAY=192.168.79.2 | 网关,也叫默认路由,带我们上网的里也有其地址 |
DNS1=192.168.79.2 | 域名解析,当输入域名访问网站时,它告诉我们IP地址。 |
NAME=ens33 UUID=dabfc269-89d8-4332-8615-564735eb90bd DEVICE=ens33 |
网卡信息 |
BOOTPROTO改为手动获取IP的时候,需要配置红框内的信息ip和网络掩码是一对,必须同时存在缺一不可,这是第一次学习网络的配置,为了方便学习,这次实验室以手动获取IP为主,以后直接是DHCP自动获取IP。
重启网络服务并查看IP
重启网络服务命令:systemctl restart network
查看IP:ip a
找到网卡名称信息,inet后面就是ip地址。
另一台机器同样的方法进行网络配置,测试连通两台计算机
配置过程省略
ping 对方ip地址
使用ping命令测试连通两台计算机
这里需要注意,如果ping不成功可能是被防火墙拦住了,需要关闭防火墙。
systemctl stop firewalld //临时关闭防火墙
systemctl disable firewalld //关闭防火墙开机自启
出现以下信息表示连接成功可以连接,稍微提一下,ip的前三个字段是网络号,要网络号相同切被使用ip的两台计算机才可以互相访问,否则无法访问。
无法连接的ip测试
ping没有被用的ip
ping不是一个网络号的ip
连接主机ip(因为是虚拟机,尝试连接主机)
ping主机的ip是可以ping通的,因为虚拟机和我们主机是共享一个网络的,可以互相访问。
网络测试工具
# ip a //查看所有IP(ipconfig)
# ip route(r) //查看路由,查看网关
# ip neigh (n) //另一台计算机ping通,查看邻居
# ping //测试连接
ip a命令
ip为192.168.79.128
ip route(r)命令
网关为192.168.79.2
ip neigh (n)命令
第一行是网关,第二行是刚刚ping这台机器的ip,在这里可以看到是谁访问了我们的主机。
ping 命令
测试连通192.168.79.130的主机。
ports and services端口服务
我们都知道电脑是有端口的,下面我们通过httpd来测试查看端口。
yum -y install httpd 安装httpd
启动httpd服务前,先查看端口
命令:ss -tnl
port(端口),下面数据 冒号后是端口号。
启动httpd服务
在启动之前一定要确定关闭防火墙
systemctl status firewalld //查看防火墙状态
systemctl start httpd //启动httpd
systemctl status httpd //查看httpd状态
防火墙处于关闭状态。
httpd服务启动成功。
之前使用过nginx的这里只用httpd可能会出现问题
之前说过nginx和httpd可能会冲突,当时关闭了httpd服务,当然在这里如果不关掉nginx进行是无法启动httpd的。
首先使用ps aux | grep nginx 查看nginx的进程号
再使用 kill 进程号 关掉进程
关掉后就可以启动httpd服务了。
再次查看端口信息
和之前相比,多了80端口,httpd占用80端口。
初始化服务器
1.为服务器配置root密码
这个在新建虚拟机时候操作了。
2.配置IP地址
和上面提到的配置IP一样的方法,就不再演示了。
3.配置YUM源
参考配置YUM源的文章:Linux使用YUM安装程序_Sure云小硕的博客-CSDN博客
4.关闭防火墙
systemctl stop firewalld //临时关闭
systemctl disable firewalld //取消开机自启
systemctl status firewalld //查看防火墙状态
上面已经做了演示,这里直接省略步骤。
5.selinux,关闭linux自带的防护
setenforce 0 //临时关闭
vim /etc/sysconfig/selinux //永久关闭
SELINUX=disabled
6.安装常用的程序
yum -y install lrzsz sysstat elinks wget net-tools bash-completion
[root@localhost ~]# yum -y install lrzsz sysstat elinks wget net-tools bash-completion 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 软件包 lrzsz-0.12.20-36.el7.x86_64 已安装并且是最新版本 软件包 sysstat-10.1.5-19.el7.x86_64 已安装并且是最新版本 软件包 wget-1.14-18.el7_6.1.x86_64 已安装并且是最新版本 软件包 net-tools-2.0-0.25.20131004git.el7.x86_64 已安装并且是最新版本 软件包 1:bash-completion-2.1-8.el7.noarch 已安装并且是最新版本 正在解决依赖关系 --> 正在检查事务 ---> 软件包 elinks.x86_64.0.0.12-0.37.pre6.el7 将被 安装 --> 正在处理依赖关系 libnss_compat_ossl.so.0()(64bit),它被软件包 elinks-0.12-0.37.pre6.el7.x86_64 需要 --> 正在处理依赖关系 libmozjs185.so.1.0()(64bit),它被软件包 elinks-0.12-0.37.pre6.el7.x86_64 需要 --> 正在检查事务 ---> 软件包 js.x86_64.1.1.8.5-20.el7 将被 安装 ---> 软件包 nss_compat_ossl.x86_64.0.0.9.6-8.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 ======================================================================================= Package 架构 版本 源 大小 ======================================================================================= 正在安装: elinks x86_64 0.12-0.37.pre6.el7 dvd 882 k 为依赖而安装: js x86_64 1:1.8.5-20.el7 dvd 2.3 M nss_compat_ossl x86_64 0.9.6-8.el7 dvd 37 k 事务概要 ======================================================================================= 安装 1 软件包 (+2 依赖软件包) 总下载量:3.2 M 安装大小:9.6 M Downloading packages: --------------------------------------------------------------------------------------- 总计 81 MB/s | 3.2 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : nss_compat_ossl-0.9.6-8.el7.x86_64 1/3 正在安装 : 1:js-1.8.5-20.el7.x86_64 2/3 正在安装 : elinks-0.12-0.37.pre6.el7.x86_64 3/3 验证中 : elinks-0.12-0.37.pre6.el7.x86_64 1/3 验证中 : 1:js-1.8.5-20.el7.x86_64 2/3 验证中 : nss_compat_ossl-0.9.6-8.el7.x86_64 3/3 已安装: elinks.x86_64 0:0.12-0.37.pre6.el7 作为依赖被安装: js.x86_64 1:1.8.5-20.el7 nss_compat_ossl.x86_64 0:0.9.6-8.el7 完毕! [root@localhost ~]# yum -y install lrzsz sysstat elinks wget net-tools bash-completion 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 软件包 lrzsz-0.12.20-36.el7.x86_64 已安装并且是最新版本 软件包 sysstat-10.1.5-19.el7.x86_64 已安装并且是最新版本 软件包 elinks-0.12-0.37.pre6.el7.x86_64 已安装并且是最新版本 软件包 wget-1.14-18.el7_6.1.x86_64 已安装并且是最新版本 软件包 net-tools-2.0-0.25.20131004git.el7.x86_64 已安装并且是最新版本 软件包 1:bash-completion-2.1-8.el7.noarch 已安装并且是最新版本 无须任何处理
这里提一个小建议,在安装软件的时候,安装完再输入一遍命令查看有没有安装成功,安装成功的话会提示已安装,到这里就初始化完成了我们的服务器。
总结
通过本篇文章,了解网络的配置,以及IP,学习如何配置一个网络,并且了解怎么访问同网络地址的ip,最终初始化一个服务器。