Linux下的网络配置

1.网络基础概念

(1)什么是IP ADDRESS

internet protocol ADDRESS ##网络进程地址

ipv4=internet protocol version 4

ipv4是个协议簇,包含了很多子协议,例如TCP/IP协议、UDP协议、ICMP协议

ip 是由 32 01 组成
11111110.11111110.11111110.11111110 = 254.254.254.254

(2)子网掩码

用来划分网络区域
子网掩码非 0 的位对应的 ip 上的数字表示这个 ip 的网络位
子网掩码 0 位对应的数字是 ip 的主机位
网络位表示网络区域
主机位表示网络区域里某台主机

(3)ip通信判定

网络位一致 主机位不一致的 2 IP 可以直接通讯
172.25.254.1 / 24 24 = 255.255.255.0
172.25.254.2 / 24
172.25.0.1 / 16

一个ip中主机位为0的ip表示这个子网本身,主机位为255的ip为该子网的广播地址,这两个ip默认情况下无法被当作普通ip使用。所以这个子网段内可用的普通ip地址最多为2的8次方-2,即254个(1~254)

254.254.254.0/24中,254.254.254.0表示为这个子网本身,/24为这个子网的子网掩码,24表示这个子网掩码的前24位都为1,即该子网掩码为255.255.255.0

子网的两种表示方式:

2.网络设定工具

(1)ping    检测网络是否通畅

ping + ip地址    检测网络是否通畅
ping - c 1       ping 1
ping - w 1      等待 1 秒(指定ping的时间为1秒,超过1秒后自动结束执行ping命令)
ping - c1 - w1 ip      同时设定:ping1 次,等待 1
检测网络是否通畅:
ping - c 2        ping 2
ping - w 3       等待 3
ping失败:

(2)ifconfig    查看或设定网络接口

ifconfig    查看目前所有网络接口
ifconfig device      显示某个网络接口
ifconfig device ip / 24    设定网络接口的ip
ifconfig device down    关闭
ifconfig device up      开启
ifconfig    查看目前所有网络接口
ifconfig device      显示某个网络接口

ifconfig device down   关闭

ifconfig device ip/24   设定网络接口的ip

用nmcli connection reload重新加载并重连上这个连接后发现ip地址又变为原来的地址,说明此修改地址的方式为临时修改 :

(3)ip addr    检测或设定网络接口

ip a    检测
ip addr   检测
ip addr show      检测
ip addr add ip / 24 dev device     设定
ip addr del dev ens160 ip / 24     删除

ip addr del ip/24 dev ens160 删除

ip a    检测

ip addr   检测

ip addr show     检测

ip addr del ip/24 dev ens160     删除

ip addr add ip/24 dev device    设定

然后reload重新加载后发现ip地址又变为原来的地址,说明此修改地址的方式为临时修改:

3.设定网络ip连接

(1)图形方式

先输入nm-connection-editor打开图形网络编辑界面,然后点击左下角的加号:

选择Ethernet以太网,然后点击创建: 

设置该连接名称为westos,下拉选择网卡设备为ens160 (00:0C:29:50:CC:30):

在此界面选择Manual(手动分配ip),然后点击Add添加一个ip,接着填写ip地址和子网掩码,然后就创建完成了:

(2)类图形方式

 进入无图像的有网络模式设定网络:

登录root用户,然后输入nmtui进入类图形的网络编辑界面:

选择edit a connection:

删掉原有的以太网连接:

选择delete删除掉:

选择add添加一个网络连接:

选择创建一个以太网连接:

输入网络名称和设备名,接着在Ipv4那里选择manual,然后选择show:

输入地址然后点击ok:

这样以太网连接创建完成,然后选择back:

选择quit退出:

查看刚才设置的以太网连接,然后进入有图形的有网络连接模式:

在有图形的网络连接模式下也可以用类图形的方式设定:

(3)命令方式设定网络:

nmcli device connect ens160       启用 ens160 网卡
nmcli device disconnect ens160        关闭 ens160 网卡
nmcli device show ens160       查看网卡信息
nmcli device status      查看网卡服务接口信息
nmcli connection show       查看连接
nmcli connection down westos     关闭连接
nmcli connection up westos        开启连接
nmcli connection delete westos        删除连接
添加连接:
nmcli connection add type ethernet con - name westos ifname ens160 ip4 172.25.254.100 / 24
nmcli connection add type ethernet  ifname ens160  con - name westos ipv4.method manual  ipv4.address  172.25.254.100 / 24
更改:
nmcli connection modify westos ipv4.addresses 172.25.254.200 / 24
nmcli connection reload        重新加载连接

首先,在管理网络时必须开启网络管理服务NetworkManager,否则无法管理网络设定:

nmcli device status      查看目前所有网卡服务接口信息

nmcli device status ens160     查看某个网卡服务接口信息

nmcli device show ens160     查看网卡信息

nmcli device connect ens160     启用ens160网卡

nmcli device disconnect ens160      关闭ens160网卡

nmcli connection show     查看连接

nmcli connection delete westos      删除连接

添加连接:
nmcli connection add type ethernet con - name westos ifname ens160 ip4 172.25.254.100 / 24

nmcli connection down westos    关闭连接

nmcli connection up westos      开启连接

更改连接:
nmcli connection modify westos ipv4.addresses 172.25.254.200 / 24

必须重新加载再用up连接才能使更改生效

用ifconfig命令查看更改后的连接:

4.管理网络配置文件

网络配置目录:
/ etc / sysconfig / network - scripts /
网络配置文件的命名规则:
网络配置文件名称:ifcfg - xxxx 
文件内容:  
DEVICE = xxx         设备名称
BOOTPROTO = dhcp | static | none         设备工作方式
ONBOOT = yes          网络服务开启时自动激活网卡
IPADDR =         IP 地址
PREFIX = 24         子网掩码
NETMASK = 255.255.255.0         子网掩码
NAME =             接口名称

dhcp 网络设定:
vim / etc / sysconfig / network - scripts / ifcfg - ens160
DEVICE = ens160
ONBOOT = yes
BOOTPROTO = dhcp
NAME = westos
systemctl restart network

(1)管理网络配置文件

进入静态网络设定文件的目录,然后删掉网卡信息:

重新编写一个网卡信息文件,并且不设置网卡的名称:

图中的System\ ens160即为刚才设置的网卡信息文件,并且可以成功开启刚才设置的网卡

给刚才创建的网卡信息文件中加上网卡名称为westos,然后可以成功开启名为westos的网卡:

可以给一块网卡设置两个ip地址:

然后用ip a可以查看到刚才设定的两个ip地址:

可以在这个文件中查看静态网络配置文件中各种参数的信息:

(2)用主机搭建dhcpd服务器

网页打开192.168.4.1(这里使用的路由器ip)进入路由器管理网页,依次选择更多功能-网络设置-局域网,然后关闭dhcp服务器,之后点击保存,这样就无法用路由器的dhcp服务给网络中的主机分配ip了:

在node1中配置以太网ens160,让它使用dhcp方式获得ip。这样由于刚才关闭了路由器的dhcp功能,此时网络中没有提供dhcp服务的主机,所以这里连接ens160网络则会因为分配不到ip而卡住不动:

过一会儿后会显示无法获得ip,连接网络失败:

建立dhcp服务器:

配置dhcp主机的静态网络:

注意:这台node2为dhcp服务器主机,需要把其他网卡配置文件删除或禁用其他网络连接,网络方面只配置这个以太网接口ens160

挂载镜像到/mnt目录,为的是安装dhcpd软件包:

安装dhcpd软件包:

生成dhcpd服务的配置文件:

这里直接把它让看的文件中的内容复制过来并且覆盖掉原来的内容:

用vim打开dhcpd.conf文件然后配置dns域名和客户能够得到的dns的ip: 

这里dns的ip随意设置一下,主要是为了看dhcp给主机分配ip的情况

default-lease-time参数为默认授权时间,即主机通过这台服务器使用的dhcp方式获得的ip默认能用多久

max-lease-time参数为最长授权时间,即以此dhcp方式获得的ip最长能用多久

log-facility参数为日志,这里默认设为第7级别,不用修改

注释掉27、28行和34行的多余内容,指定分配ip的网段和子网掩码,且删掉35行后面多余的内容:

启动dhcpd服务:

用node1主机测试: 

可见,刚才设定好的dhcpd主机给测试主机自动分了ip:

node1中的ens160连接获得了刚才在dhcp配置文件中规定范围内的ip:

这张是后来重做一遍这个实验的截图

可以在刚才配置好的dhcpd服务器主机上查看dhcp服务信息文件:

5.配置Linux系统中的主机作为网关

vim /etc/sysconfig/network         全局网关 针对所有没有设定网关的网卡生效
GATEWAY = 172.25.254.250
vim /etc/sysconfig/network-scripts/ifcfg-ens160
GATEWAY0 = 172.25.254.20       当网卡中设定的 IP 有多个时 指定对于哪个 IP 生效
GATEWAY = 172.25.254.20        网卡中设定的 IP 只有一个时
route -n        查看网关

网关示意图:

最左侧为最终目标主机,中间为路由器(中间目标主机),最右侧为数据包的起始主机

网关:起始主机把数据包传输给中间目标主机,让它来为起始主机做地址转换,则这个中间目标主机上的这个ip(图中为172.25.254.100)被称为起始主机的网关

路由器是一个多网卡的主机。

路由器上处于与起始主机为同一个网段的ip为该起始主机的网关

实验需要3台主机,现在把Windows主机当作最终目标主机,node1当作路由器主机(网关主机),node2当作数据包起始主机

查询Windows主机的ip:

现在需要使node2能和Windows主机通信:

现在直接在node2中ping Windows主机的ip,可以看到ping不同,因为是两个不同网段的ip且此时尚未设置网关:

(1)添加作为网关主机的网卡

选择左下方的添加:

添加网络适配器:

将网络桥接到VMnet0然后点击确定: 

查看设置好的两块以太网网卡:

(2)配置两块以太网网卡文件

node1主机上ens160的网卡ip和node2的ip在同一个网段,ens192的网卡ip和Windows主机在同一个网段

测试是否设定好:

在Windows主机ping网关主机node1,在node2主机ping node1

均成功,则说明node1主机的双网卡设置没问题:

(3)添加防火墙策略和网关并测试网关功能

 让Windows和Linux的不同网段的主机间可以互相通信:

关闭掉Windows防火墙:

在双网卡主机中打开地址伪装功能:

添加火墙策略,打开地址伪装功能

显示masquerade:yes即为成功打开

在要和Windows通信的主机nodeb(node2)上查看网关,发现没有可用的网关后添加设置nodea(node1)的ip为网关,然后ping Windows的ip后发现连接成功:

重启网络后,发现手动设定的网关失效,可见以此命令添加的网关为临时的: 

(4)建立全局网关

全局网关对所有网卡都生效

当网卡内没设置网关时,此网关生效

当网卡配置文件内设定网关后,此网关失效

手动删除网关:

此法的删除网关也为临时删除

(5)在网卡配置文件中设定网关:

当一块网卡有多个IPADDR时,网关GATEWAY也必须带和IPADDR参数相同的数字,如下图: 

6.设定dns

dns的作用:地址解析
系统操作者对字符敏感,但系统网络通信需要通过ip 地址,而ip地址是个数字
当操作者输入网址 www.baidu.com, 这个网址不是一个可以通信的 IP 地址
于是必须要在系统中把 www.baidu.com设置成 百度服务器的 IP 地址以让系统知道这是百度服务器的IP地址
这样的过程叫做地址解析
dns信息配置文件:
vim /etc/hosts      本地解析文件 , 此文件中直接提供地址解析
            ip                            域名
220.181.111.188       www.baidu.com
vim /etc/resolv.conf       dns 的指向文件  不需要重新启动网络立即生效
nameserver 114.114.114.114    当需要某个域名的 IP 地址时去问 114.114.114.114
vim /etc/sysconfig/network-scripts/ifcfg-xxxx       直接在网卡配置文件中加上DNS的信息
DNS1 = 114.114.114.114 ## 需要重启网络 , 当网络重新启动
此参数会修改 /etc/resolv.conf

注意:
当网络工作模式为 dhcp 时 ,系统会自动获得ip、 网关、 dns
那么 / etc / resolv.conf 会被获得到的信息修改
如果不需要获得 dns 信息 ,在网卡配置文件中加入:PEERDNS = no

(1)设定DNS:

设置网关然后联网:

检测是否能连接外网:

Ping百度的ip:

成功 

Ping百度的网址失败:

测试本地解析文件是否可以帮助设置DNS信息:

在本地解析文件中写入百度的ip,然后可以ping通百度的网址:

测试dnf指向文件是否能帮助设置DNS信息:

在dns指向文件中写入dns主机的ip地址:        

测试网卡配置文件是否可以帮助设置DNS信息:

可以在网卡配置文件中写入dns信息:

注意:网卡文件里的DNS后一定要有数字。

此法设置好会自动修改 dnf信息文件中的dns信息:

注意:如果把网卡配置文件中的dns配置删除,则重新加载并重新连接该网络后dns指向文件/etc/resolv.conf中的dns信息也会被删除

(2)dns解析优先级测试

系统默认: /etc/hosts > /etc/resolv.conf

修改dns解析优先级:
vim /etc/nsswitch.conf
39 hosts : files dns ## / etc / hosts 优先
vim /etc/nsswitch.conf
39 hosts : dns files ## / etc / resolv.conf dns 指向优先

/etc/hosts中手动指定了百度的解析为192.168.0.100

/etc/resolv.conf中指定的dns也能提供解析

这两个之间默认本地解析优先级高

测试:

这个dns解析的优先级顺序是可以更改的:

在这个文件中更改

files表示使用/etc/hosts中的解析,dns表示使用dns服务器的解析

目前这个文件中写的本地解析优先级是排在dns服务器前面的

这里修改dns服务器解析为优先级高:

再ping百度发现这次使用dns跟本地文件解析中百度的ip不同了,使用的是dns服务器解析的ip:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值