LInux基础命令(十)网络

网络中的概念

ip: internet protocl address  互联网协议地址,用来标识网络上唯一的主机!

ip划分类型、IPV4与IPV6的区别

网络位:网络所在的区域!

主机位:区域内的主机!

举例:不同班的学生、送快递、户口本!

子网掩码:将某个IP划分成网络地址和主机地址!

子网:用来划分网络;掩码:可用的子机数!

注意:减去全0(无效),全1(广播)!

网络延迟:ping,一问一答的过程!

############################################

实验

  1、ip的设置

    (1)实验环境的答建

  1)配置两台虚拟机重置-->保证原声的环境
  2)通过root身份,给server添加一块网卡
  3)desktop理论上不用设置网卡,默认有一块网卡

实验目的:添加有线网卡,为下面的实验做准备!
真机的相关操作

rht-vmctl reset desktop 
rht-vmctl reset server 
virt-manager 
rht-vmctl view server
测试虚拟机网卡:ip addr show或 ifconfig来查看!

现象:网卡下面没有网络连接,即并没有设置IP

(2)临时设定静态IP

特点:用ifconfig 为网卡指定IP地址,这只是用来调试网络用的,并不会更改系统关于网卡的配置文件,此连接没有名字

注意1:会覆盖当前的设置,但是重启网络后临时ip失效!

注意2:临时设置的子网掩码不能设置成类似255.255.255.0的形式,必须是数字

ifconfig 作用:可以用来配置网络接口的IP地址、掩码、网关、物理地址等!-->给个链接!

########################################

(3)设定静态IP

    方式1多用户图形界面

nm-connection-editor

  

说明1:mac实现信息访问控制,通过同轴线来传输数据(半双工)!

说明2:其它网络类型还有环形、星形(IBM不开源--->令牌的获取)等!

牢记:设置IP所设定的参数!

补充:一个网卡可以设置多个ip,方便不同的网段连接(做法:将多个ip信息写到同一个文件中)!

应用场景

相关链接

################

方式2文本图形接口

黑窗口:nmtui --> network manager text ui

说明:此种方式添加网络,底层还是修改了配置文件,如果生效必须重启网络服务!

#################

方式3:nmcli的方式

#################

方式4:直接修改配置文件的方式

# Bridge Networking Interface
# (1)网卡的名字
DEVICE=eth0
# (2)网络连接接口的名称
NAME=link
# (3)网络服务开启时是否自动激活网卡
ONBOOT=yes
# (4)ip的获取方式,静态(static)
BOOTPROTO=none
# (5)连接1
IPADDR0=172.25.10.100
# (6)子网掩码--->注意等价的简便形式!
NETMASK0=255.255.255.0
# (7)一个网卡下挂多个连接,注意用数字区分,连接2
IPADDR1=172.25.2.100
PREFIX1=24

注意1:结尾不要有多余的空格!
注意2:修改完成之后必须重启网络才能生效!

说明:/etc/sysconfig/network-scripts/ifcfg-*开头的文件都会加载,如果网络起不开从这里找原因!

注意:这里的*表示的是网卡名字,不管是虚拟的还是真实的!

多个IP的机制:添加子网卡的形式来添加IP!

说明:默认ifconfig只显示第一个网卡的信息!

###########################

(4)网关和路由的实验

ip通信的判定:ping x.x.x.x 测试网络是否通畅!

问题的引入同一个网段的可以ping通,但是不同网段的就不行?

解决思路:配置网关

网关作用:接受不合法的数据,为不在同一网段的主机提供搭桥的服务!

实验的前提

server主机:有两块网卡,分别设置为1.1.1.100/24和172.25.2.100/24 -->可以通过配置文件,然后cp修改

desktop主机:设置静态ip是1.1.1.200

测试:desktop上 "ping 172.25.2.250"能够通!

现实生活中的一个例子

借钱:A问C借钱,但是A跟C不熟,怎么办?找个跟C熟的人B搭个桥,对于C看到的就是B向他借钱(熟人好借),最后B又把原封不动的给了A,至此借钱成功!

A<--------B------->C

过程中B在A的通信录中可信赖的熟人,我们就称B为A的网关

服务器的设置

    1)增加IP伪装的功能,封装源IP和数据,加上自己的IP作为数据头,进行数据传输!

    2)增加内核(knerl)路由功能,使同一个主机上的两个网卡上的IP可以相互通信!

原理

一、路由器(TP-LINK):必须是双网卡

(1)开启防火墙 -->firewall-cmd start firewalld

(2)开启NAT-->masquerade,先查看其状态

masquerade:地址伪装,实现自动化的snat

举例:把所有1.1.1.200IP发送的数据包SNAT成172.25.2.100的ip然后发出去,ip源伪装成跟目标ip同一网段的!

firewall-cmd --list-all -->查看masquerade默认是no

(3)添加生效-->永久的和临时的-->加不加permanent-->masquerade(伪装)

firewall-cmd --permanent --add=masquerade

(4)防火墙必须重启才能生效

firewall-cmd --reload

(4)开启内核路由功能(默认是不开启的,即禁止数据包转发)

sysctl -a |grep ip_frward -->如果是0表示没有开启

vim /etc/sysctl.conf -->添加net.ipv4.ip_forward = 1

sysctl -p -->重新加载此配置文件,此时主机中的一个网卡就可以接受另一个网卡的数据了!

sysctl

sysctl -->运行时修改系统内核的参数!

-a:显示所有内核的数值

-p:reload配置信息

NAT:Network Address Translation,网络地址转换

sysctl命令修改内核参数的原理

注意:设置防火墙和路由的规则之后,必须重新加载配置文件!

desktop的设置

    1)设置网关

注意:网关设置后,也必须重新加载配置文才能生效!

补充:ip route 也能查看路由信息!

网关的设置方式

           1)配置文件的方式(全局的和局部的),要注意重启!

            全局:/etc/sysconfig/network --->特点:所有没有网关的IP都会生效!

           2)nmcli的方式或者图形的方式(适用于已知所需的网关)

           3)修改/etc/sysconfig/network-scripts/icfg-*对应网卡配置文件的IP下的网关,只作用于当前的IP!

注意:如果有多个IP,GATEWAT加上相应的数字编号!

说明:network在RHEL8默认不会开启的,尽量学会用nmcli的方式

测试:ping通之后,通过ssh远程登陆不在同一个网段的主机,观察登陆此台主机的ip信息!

小知识:不在同一个网段的IP如何通过SSH远程登陆!

ARP

Address Resolution Protocol:即地址解析协议,用于实现从 IP 地址到 MAC 地址的映射,即询问并记录目标IP对应的MAC地址

arp -a    #查看ARP缓存状态

nmcli受NetworkManager服务控制!

路由

######################

(5)虚拟机上网

前提:真机连上wifi网络,相当于此时主机有两个网卡,是一个路由器!

真机设置

(1)通过ifconfig-->查看最上面和最下面的网卡,以及对应的IP!

说明:内(第一个的就是自己的网卡和IP)、外(最后一个的就是所连接wifi的网卡和IP)

(2)开内核路由和masquerate(NAT)

:省略

虚拟机设置

(1)增加网关-->和真机的ip(内)相同,表明数据传输到此网关对应的IP!

(2)sysytemctl restart network.service 重启网络,加载配置文件

(3)ping 61.135.169.121    可以ping通

注意:ping www.baidu.com不通!

虚拟机测试

本地解析

配置文件:/etc/hosts -->主机名和IP配置文件 主机名查询静态表

内容:域名和IP的映射关系

弊端只能通过此域名访问此IP,不能访问其它域名!

解决思路:理论上我们可以将所有域名和IP映射起来,但是工程太浩大了,还是交给别人来处理,交给谁呢

引申出:域名的解析问题

概念:DNS(Domain Name System 域名系统 ),因特网上作为域名和 IP 地址相互映射的一个分布式数据库 ,能够使用户更方便的访问互联网 ,不用去记复杂的IP!

通俗的理解:钱交给了运营商,运营商专门有一台服务器记录IP和域名的映射,当我们访问域名的时候,把域名映射映射的IP返回给我们,提供这样服务的机器叫做DNS服务器!

常见的DNS服务器

114.114.114.114 -->国内移动、电信和联通通用的DNS(常用)!!!
8.8.8.8         -->谷歌的DNS服务器
218.30.19.50    -->陕西省的DNS

特点:公共域名解析服务,不用担心因ISP运营商导致的DNS劫持等问题,而且都是免费提供给用户使用的!

DNS配置文件:/etc/resolv.conf

reslove:解析

测试:优先级的顺序,改变优先级

(1)修改/etc/hosts-->将百度的域名和IP影射,然后测试

(2)实验现象-->看百度news发现还不行

(3)修改/etc/resolv.conf  -->增加域名解析服务器的地址,测试实验现象

(4)将/etc/hosts百度的域名解析成任意的IP或者自己的ip,观察优先级

(5)改变本地解析和DNS服务器的解析优先级-->修改/etc/nsswitch.conf

 调整: files 和dns的顺序

补充:/etc/nsswitch.conf文件

结论:默认本地解析的优先级高于DNS解析!

###############

(6)有线连接的问题

        1)客户端有无的情况

           方式1: linux 与校园网终极解决方案(思路:Linux装一个虚拟机,虚拟机安装Windows,利用Windows的上网功能)

           方式2:linux下使用命令行连接校园网(基于Java)

           方式3:使用官方 Linux 客户端,没有的话就只能自己写!

        2)Linux连接Windows的有线和无线的网络

(1)Windows主机的--->Windows图标+r-->打开cmd--->输入'ipconfig/all'

(2)查看"以太网适配器的本地连接"信息-->有待考证

  关注:ipv4、网关、DNS

(3)Linux主机上相关的设置

 修改配置文件的方式:/etc/sysconfig/network-scripts/ifcfg-br0添加IP等信息

 IPADDR3=与Windows主机查看在同一网段的不冲突的IP
 GATEWAY3=Windows中的ipv4
 DNS3=上述的Windows的DNS或者常见的114.114.114

注意:不要修改此配置文件原有的信息!

#####################

(7)网络故障的排除

      1)真机重启的问题,破坏虚拟机的网卡

现象:真机重启网络后,虚拟机在同一网段ping不通

解决思路:通过virt-manger删除当前虚拟机的网卡,然后重新给其分派一个网卡!

(1)真机"重启"网络-->restart

(2)ping-->虚拟机ping不通真机,是网卡的原因!

(3)virt-manager-->灯泡-->删除指定虚拟机的网卡,然后添加一块新的网卡,查看此虚拟机的ip信息,没有则添加

(4)ping 看是否能ping通!

    说明:红帽已知的bug

      2)ip冲突

      3)装系统时网络出现飞行模式,无法连接网络

原因:默认网卡是被系统内核所禁用了!

查看:网卡是否被禁用

思考:如果是yes该怎么处理!

处理:连接1连接2

      4)真机无法连接wifi

(1)brctl show -->看真机的无线网络是否完好!标志-->第一行interfaces是不是空!

  解决办法: 如果是空,cd /etc/sysconfig/network-scripts/ -->看是否有 ifcfg-Wired_connection_1(有了删除掉)

  原因:默认以ifcfg-*开头的都会生效,找不到则启动不了网络!

     说明:图示表示网络完好!

########################

(8)nmcli命令的详细解释!

说明:nmcli是NetworkManger服务所提供的,使用此命令此服务必须开启!

把握一点:将图形的设置引申到命令的设置!

常用的设置:connection、device 其它了解

常用的组合:从需求入手!

命令 使用
nmcli dev status         列出所有设备
nmcli dev dis <dev>      断开某个设备的所有连接
nmcli dev con eth0       查看eth0网卡上的连接信息
###########分割线##############
nmcli con show           列出所有连接
nmcli con up <name>      激活某个连接
nmcli con down <name>    关闭某个连接
nmcli con add ..         添加一个新连接
nmcli con mod <ID>       修改连接
nmcli con del <ID>       删除连接

说明:没有tab提示,则--help看是否有提示!

场景应用

(1)通过dhcp自动获取ip
nmcli connection add type ethernet con-name activelink ifname eth0 autoconnect yes

(2)设置静态ip
nmcli connection add type ethernet con-name static ifname eth0 ip4 172.25.254.10/24

(3)对连接进行操作{删除、禁用、使用、查看}
nmcli connection delete java
nmcli connection show
nmcli connection down java
nmcli connection up java

(4)对连接的修改-->细节部分(修改ip和获取ip的方式)
nmcli connection modify "java" ipv4.addresses 172.25.2.100/24
nmcli connection modify "java" ipv4.method    <auto|manual>

(5)网卡的设置
nmcli device connect eth0
nmcli device disconnect eth0
nmcli device show
nmcli device status

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值