Linux从入门到精通——Linux中的网络配置

一.IP Address  

1.什么是IP

网络之间互连的协议(IP)是Internet Protocol的外语缩写,中文缩写为“网协”。

网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,
规定了计算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据
用户性质的不同,可以分为5类。另外,IP还有进入防护,知识产权,指针寄存器等含义。


2.基本原理

网协是怎样实现的?网络互连设备,如以太网、分组交换网等,它们相互之间不能互通,不能互通的主要原因是因为它们所传送数据的基本单元(技术上称之为“帧”)

的格式不同。IP协议实际上是一套由软件、程序组成的协议软件,它把各种不同“帧”统一转换成“网协数据包”格式,这种转换是因特网的一个最重要的特点,使所有各

种计算机都能在因特网上实现互通,即具有“开放性”的特点。

 

3.IP地址

所谓IP地址就是给每个连接在互联网上的主机分配的一个32位地址,即ip 是由32个01组成的
例如:11111110.11111110.11111110.11111110 = 254.254.254.254

 

4.基本格式及地址分配

如今的IP网络使用32位地址,以点分十进制表示,如192.168.0.1。

地址格式为:IP地址=网络地址+主机地址或 IP地址=网络地址+子网地址+主机地址。
网络地址是因特网协会的ICANN( the Internet Corporation for Assigned Names and Numbers)分配的,下有负责北美地区的InterNIC、负责欧洲地区的RIPENIC和负
责亚太地区的APNIC 目的是为了保证网络地址的全球唯一性。主机地址是由各个网络的系统管理员分配。因此,网络地址的唯一性与网络内主机地址的唯一性确保了IP
地址的全球唯一性。
根据用途和安全性级别的不同,IP地址还可以大致分为两类:公共地址和私有地址。公用地址在Internet中使用,可以在Internet中随意访问。私有地址只能在内部网络中
使用,只有通过代理服务器才能与Internet通信


5.子网掩码

子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。
子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码是一个32位地址,例如24=255.255.255.0,它用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
子网掩码非0的位对应的ip上的数字表示这个ip的网络位,0位对应的数字是ip的主机位,网络位表示主机所在的网络区域,主机位表示该区域里某一台主机




6.ip通信判定规则

网络位一致,主机位不一致的2个IP可以直接通讯,网络位不一样的两个IP则需要通过路由进行通信。


7.路由


路由(routing)是指分组从源到目的地时,决定端到端路径的网络范围的进程 [1]  。路由工作在OSI参考模型第三层——网络层的数据包转发设备。路由器通过转发

数据包来实现网络互连。虽然路由器可以支持多种协议(如TCP/IP、IPX/SPX、AppleTalk等协议),但是在我国绝大多数路由器运行TCP/IP协议。路由器通常连接两

个或多个由IP子网或点到点协议标识的逻辑端口,至少拥有1个物理端口。路由器根据收到数据包中的网络层地址以及路由器内部维护的路由表决定输出端口以及下一

跳地址,并且重写链路层数据包头实现转发数据包。路由器通过动态维护路由表来反映当前的网络拓扑,并通过网络上其他路由器交换路由和链路信息来维护路由表。

简单的理解,路由器就是两个网络位不同的主机要实现通信所必须的“翻译“、”中介“,而这个”翻译“”介绍“的过程就叫路由。

 

8.网关

 

网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广

域网互连,也可以用于局域网互连。 网关是一种充当转换重任的计算机系统或设备。使用在不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之

间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。同层--应用层。

网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址

范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换

机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。

如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机

(如附图所示)。

所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地
址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。
在和 Novell NetWare 网络交互操作的上下文中,网关在 Windows 网络中使用的服务器信息块 (SMB) 协议以及NetWare网络使用的 NetWare 核心协议 (NCP) 之间起着桥梁
的作用。网关也被称为 IP路由器。

 


二.Linux中的网络设定工具


1.命令方式设定网络(一)

常用命令及参数:
ping               ##检测网络是否通畅
ifconfig             ##查看或设定网络接口
ifconfig             ##查看本机IP
ifconfig device ip/24          ##设定device设备上的IP和子网掩码
ifconfig device down         ##关闭device网卡
ifconfig device up        ##开启device网卡

 

注:此处的device是网卡的名称,即网卡被系统驱动以后设定的名字,用ifconfig可以看到,要看自己电脑里有什么网卡才能对其操作,device的名字是一个物理事实,

是硬件厂商设定好的,自己是改变不了的

 

可以连接百度网站,time代表连接延迟,如果无显示则代表连接不通

 

 

为了显示下图设定IP地址的效果,在此我把地址写清空了,截图内容仅供参考,如果已经配置好的应该是有IP地址的

 

 

设定IP地址为172.25.254.109

 

 

可以看到网卡设备eth0已经没有了

 

 

开启了网卡,不过我虚拟机的网卡有些问题开启了以后变成了动态地址,由于没有dhcp服务器给该虚拟机分配IP地址,所以开启以后没有了IP地址

 


ip addr                  ##检测或者设定网络接口
ip addr show              ##显示所有网络信息
ip addr add ip/24 dev device      ##设定device网卡IP和子网掩码,如网卡已存在配置,则无效,不能覆盖
ip addr change ip/24 dev device   ##更改device网卡网络设定

 

 

 

ip addr 和 ip addr show 效果一样

 


2.图形方式设定网络


(1)nm-connection-editor        ##nm=network manager服务,这个服务是用来记录网络状态的

 

 

 

利用该命令添加新的网络配置的流程:

 

 

点击Add

 

选择网络为以太网(Ether),点击Create...

 

 

 

 编辑网络接口名称,选择MAC地址

 

关于MAC地址:

MAC(Media Access Control或者Medium Access Control)地址,意译为媒体访问控制,或称为物理地址、硬件地址,用来定义网络设备的位置。在OSI模型中,第三层网络层负责 IP地址,第二层数据链路层则负责 MAC地址。因此一个主机会有一个MAC地址,而每个网络位置会有一个专属于它的IP地址。

MAC地址是网卡决定的,是固定的。它用来表示互联网上每一个站点的标识符,采用十六进制数表示,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给不同厂家分配的代码(高位24位),也称为"编制上唯一的标识符"(Organizationally Unique Identifier),后三个字节(低位24位)由各厂家自行指派给生产的适配器接口,称为扩展标识符(唯一性)。一个地址块可以生成2个不同的地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48。

 

 

 

 选择IPV4工作方式

 

 

 

 编辑IP地址和子网掩码以及网管

 

在使用该命令添加网络后,重启网络后再修改发现IP是修改不了的,因为network manager已经记录下了之前的网络配置信息,如果想要修改网络,需要关闭这个服务。
systemctl stop       NetworkManager      ##关闭network manager服务
systemctl restart nerwork            ##重启网络服务
systemctl start      NetworkManager      ##开启network manager服务

 


2.nmtui
此命令是上命令的无图形版,可在不开启图形的模式下运行,而上命令则不可以

 

 

 


3.命令方式设定网络(二)
  
使用的命令为:nmcli          ##使用该命令的前提是NetworkManager服务是开启的

nmcli device connect eth0          ##启用eth0网卡
nmcli device disconnect eth0           ##关闭eth0网卡
nmcli decive show eth0                ##查看网卡信息
nmcli device status eth0            ##查看网卡服务接口信息

 

 

关闭网卡接口

 

 

开启网卡接口以后,IP地址恢复正常

 

 

查看网卡信息

 

 

查看网卡接口服务信息

 


nmcli connection show                        ##显示网卡接口信息
nmcli connection down westos                 ##关闭网卡接口
nmcli connection up westos                   ##开启网卡接口
nmcli connection delete westos                ##删除网卡接口
nmcli connection add type ethernet con-name yasuo ifname eth0 ip4 172.25.254.109/24                    ##添加一个类型为以太网接口名字为yasuo网卡名字为eth0使用ipv4地址为172.25.254.109的网络
nmcli connection modify westos ipv4.method auto        ##更改ipv4的网络连接方式为动态
nmcli connection modify westos ipv4.method manual    ##更改ipv4的网络连接方式为静态
nmcli connection modify westos ipv4.address 172.25.254.209/24        ##更改ipv4的地址为172.25.254.209/24

小知识:在使用多参数的命令记不住参数时,按两下Tab键可以查看相关参数,不需要死记硬背,也不要凭想法乱写

 

 

显示网卡接口信息

 

 

删除网卡接口

 

 

更改IPV4工作方式为动态;更改IPV4工作方式为静态,并设置IP地址为175.25.254.109/24

 

 

 


4.修改配置文件设定网络

网络配置目录
/etc/sysconfig/network-scripts/

网络配置文件的命名规则:
ifcfg-xxxx


文件内容以书写格式:
DEVICE=XXX                      ##填写网卡名称,再次强调网卡名称是一个物理事实
BOOTPROTO=dhcp|static|none      ##网卡的工作方式
ONBOOT=yes                      ##在网络服务启动的时候自动激活该配置的网卡
IPADDR=xxx.xxx.xxx.xxx                   ##IP地址
PREFIX=24                     ##子网掩码,可以写全可以缩写    
NETMASK=255.255.255.0            ##子网掩码,必须写全不能缩写为24
NAME=                            ##接口名称,这个可以任意设定

注:prefix和netmask只能写一个!!!而只有prefix能缩写

示例:
静态网络设定文件
vim  /etc/sysconfig/network-scripts/ifcfg-eth0


按照上面的内容写入文件

重启网络
systemctl restart network

 

 

编辑前把原有的配置删除,一块网卡只能有一个配置文件

 

 

编辑网卡配置文件,退出保存

 

 1 systemctl restart network                                      #重启网络服务                         



如何让一块网卡上有多个IP:
写配置文件时IPADDR后加数字,例如第一个IPADDR后加0,表示第一个IP地址,以此类推


三.lo回环接口

在Linux中除了有网络接口外,还有虚拟接口,其中最著名的就是lo本地回环接口,它类似于人体内的神经系统,用于系统内部程序与软件的内部通信,

它的IP地址为127.0.0.1,主机内部服务在通信时该接口会开启

 

 

四.网关的设定


1.把真实主机变成路由器


systemctl stop libvirtd                  ##关闭虚拟程序管理服务
systemctl restart firewalld                 ##重启防火墙
systemctl start libvirtd                  ##开启虚拟程序管理服务

firewall-cmd --permanent --add-masquerade        ##开启防火墙地址伪装功能
firewall-cmd --reload                   ##重新加载
firewall-cmd --list-all                    ##显示防火墙开启的所有端口


出现如下效果:
public (default, active)
  interfaces: br0 enp0s25 wlp3s0
  sources:
  services: dhcpv6-client ssh
  ports:
  masquerade: yes    <<<地址伪装功能开启,真实主机变成路由器
  forward-ports:
  icmp-blocks:
  rich rules:

 




2.设定虚拟机网关

vim /etc/sysconfig/network           ##全局网关,针对所以没有设定网关的网卡生效,而对设定的网卡则不生效
GATEWAY=172.25.254.9


vim /etc/sysconfig/network-scripts/ifcfg-eth0
GATEWAY0=172.25.254.9                ##当网卡中设定的IP有多个时,指定对于哪个IP生效,在后面加对应数字

route -n                    ##查看网关

 

效果如下:
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.43.1    0.0.0.0         UG    600    0        0 wlp3s0
172.25.9.0      0.0.0.0         255.255.255.0   U     425    0        0 br0
172.25.254.0    0.0.0.0         255.255.255.0   U     425    0        0 br0
192.168.43.0    0.0.0.0         255.255.255.0   U     600    0        0 wlp3s0
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

 




3.设定dns

domain name server == 域名解析服务                              ##解析就是把域名变成IP

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       ##网卡配置文件
DNS1=114.114.114.114                        ##永久更改dns,上面的操作当网卡重启后就自动清除了


注意:
当网络工作模式为dhcp时
系统会自动获得ip  网关  dns
那么/etc/resolv.conf 会被获得到的信息修改
如果不需要
则在 /etc/sysconfig/network-scripts/ifcfg-eth0中
加入PEERDNS=no


如果不知道在修改显卡配置文件时的参数,可以进入/usr/share/doc/initscripts-9.49.17/sysconfig.txt中查看



4.设定解析优先级
系统默认优先级:
/etc/hosts     >     /etc/resolv/conf

通过编辑相关配置文件可以改变优先级

vim /etc/nsswitch.conf
在第39行    hosts:     files dns        ##hosts文件优先


vim /etc/nsswitch.conf
在第39行    hosts:    dns files         ##resolv文件优先

转载于:https://www.cnblogs.com/ChairmanYSL/p/9394850.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值