CentOS7网络配置
查看网络IP和网关
查看物理机上的ip(window系统):win+r输入cmd,在命令行窗口中输入ipconfig
说明:VMnet1和VMnet8是安装VM之后为我们虚拟出来的网络适配器(网卡),这里先不讲,看完下面的三种网络连接模式你就懂了,WLAN是物理机网络适配器,IPV4是物理机在当前局域网中的ip地址。
查看虚拟机的ip地址:打开终端输入ifconfig[^p41]或者ip addr
说明:ens33网络适配器中的ip地址是vm在当局域网中的ip,而virbro是虚拟机创建了一个默认的虚拟网桥设备,可以在虚拟机中在安装VM,在到VM中安装操作系统,就是使用这个虚拟网桥,作用类似于物理机上的VMnet8
提出疑问:
从上面的观察可以知道pc机与vm中的虚拟机是不在同一个网段的。
问题1:为什么虚拟机和主机不在同一个网段,也可以通信呢?它们到底是怎么通信的呢?
问题2:为什么在主机中会多出两个网络适配器?1也就是为什么会多两个虚拟网卡?
VMware提供了三种网络连接模式:
桥接模式
虚拟机直接连接外部物理网络的模式,主机起到了网桥的作用。这种模式下,虚拟机可以直接访问外部网络,并且对外部网络是可见的(是同一个局域网可见)。
网桥:可以理解为网络连接扩展设备。用来连接两个不同网段的网络设备
网桥的缺点:
单一广播域:网桥连接的所有设备都在同一个广播域内,当网络中的广播和多播流量增加时,可能会导致网络拥塞和性能下降。
广播风暴:如果一个设备在广播消息中发送大量的广播包,网桥会复制并转发该广播消息到所有其他设备,这可能导致广播风暴,影响网络性能。
安全性问题:网桥没有明确的安全隔离功能,所有连接到网桥的设备都在同一个网络中,可能会增加网络安全风险。
有限的端口:网桥通常具有有限的端口数量,限制了可以连接到网络的设备数量。
网络隔离:如果需要将不同的网络隔离开来,网桥并不能提供完全隔离的功能,需要使用其他更高级的网络设备如路由器、虚拟局域网 (VLAN) 等。
DHCP是Dynamic Host Configuration Protocol的缩写,即动态主机配置协议。它是一个网络协议,用于动态地向网络上的主机分配IP地址、子网掩码、网关等网络参数,以及DNS服务器等。DHCP协议能够自动为网络上的主机配置网络参数,避免了手工配置的繁琐和容易出错。在局域网中,一般由路由器或者服务器来提供DHCP服务,向客户端分配IP地址等参数。
NAT模式
NAT模式(network address translation 网络地址转换,虚拟机和主机构建一个专有网络,并通过虚拟机网络地址转换(NAT)设备对IP进行转换。虚拟机通过共享主机IP可以访问外部网络,但外部网络无法访问虚拟机。所以不在是通过路由器分配的局域网地址去访问外网了
仅主机模式
设置静态IP
systemctl restart network.service
[root@FairyQin ~]# ifconfig #查看网络名为ens33
[root@FairyQin ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
#按照下面的内容修改
TYPE="Ethernet" #网络类型(通常是 Ethemet)
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" #[none|static|bootp|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="e83804c1-3257-4584-81bb-660665ac22f6" #随机 id
DEVICE="ens33" #接口名(设备,网卡)
ONBOOT="yes" #系统启动的时候网络接口是否有效(yes/no)
#IP 地址
IPADDR=192.168.1.100 #配置成你自己的网段
#网关
GATEWAY=192.168.1.2 #配置成你自己的NAT设置中的值,在上面图片中有
#域名解析器
DNS1=192.168.1.2
#重启网络服务
[root@FairyQin ~]# systemctl restart network.service
修改 IP 地址后可能会遇到的问题
( 1) 物理机能 ping 通虚拟机, 但是虚拟机 ping 不通物理机,一般都是因为物理机的防火墙问题,把防火墙关闭就行
(2) 虚拟机能 Ping 通物理机,但是虚拟机 Ping 不通外网,一般都是因为 DNS 的设置有问题
( 3) 虚拟机 Ping www.baidu.com 显示域名未知等信息,一般查看 GATEWAY 和 DNS 设置是否正确
(4) 如果以上全部设置完还是不行, 需要关闭 NetworkManager 服务
systemctl stop NetworkManager 关闭
systemctl disable NetworkManager 禁用
(5) 如果检查发现 systemctl status network 有问题 需要检查 ifcfg-ens33 配置文件是否正确
补充:
由于centos系列不久将不在长期支持维护,所以出现了一些centos的替代品,这里介绍比较好的、使用和centos相差不大的AlmaLinux9的静态ip配置
由于AlmaLinux9中NetworkManager不再创建ifcfg这种格式的新配置文件。NetworkManager将新的网络配置文件以keyfile格式存储在/etc/NetworkManager/system–connections/ directory(这里我也是新手就不多解释了)直接先用上
[root@root system-connections]# cd /etc/NetworkManager/system-connections
[root@root system-connections]# ls
ens33.nmconnection
#直接用vim打开,配置成下面的内容,保存退出,重启网络服务,测试
[connection]
id=ens33
uuid=43eec999-5a87-3f2b-9177-287015fd0a0c
type=ethernet
autoconnect-priority=-999
interface-name=ens33
timestamp=1684214714
[ethernet]
[ipv4]
address1=192.168.241.250/24,192.168.241.2 #ip 子网掩码,网关
dns=192.168.241.2;8.8.8.8;8.8.4.4; #自定义dns,多个使用逗号隔开
ignore-auto-dns=true #不适用自动dns
method=manual #manual表示使用静态ip地址
[ipv6]
addr-gen-mode=eui64
method=auto
[proxy]
#使用下面的命令重启ens33(重启也可以)
nmcli connection down ens33 && nmcli connection up ens33 #如果执行了这个还是不行,重启一下就可以了
AlmaLinux9默认情况下禁止使用SSH root密码登入,如果要使用ssh root密码登入需要修改配置文件
[root@root ~]# vim /etc/ssh/sshd_config #打开配置文件
#PermitRootLogin prohibit-password
PermitRootLogin yes #允许root
[root@root ~]# systemctl restart sshd #重启服务,这里最好重启机器
ssh-keygen -t rsa #在远程连接工具中打开一个终端输入这个命令,-t表示使用rsa算法
Generating public/private rsa key pair.
Enter file in which to save the key (/home/1234/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/1234/.ssh/id_rsa
Your public key has been saved in /home/1234/.ssh/id_rsa.pub
把生成的公钥id_rsa.pub上传到服务器上(这里使用xftp上传),因为是物理机和服务器在一台机器上,如果是真实的服务器可以使用以下命令上传
[root@angelxin ~]# sftp root@ip #然后输入密码登入服务器(这些操纵是在连接上服务器在服务器上操作的)
sftp> put /home/1234/.ssh/id_rsa.pub #上传公钥
sftp>exit #退出sftp
#将公钥信息追加到~/.ssh/autorized_keys文件中,在almalinux9中的autorized_keys文件名改了known_hosts
[root@angelxin .ssh]# cat id_rsa.pub >> known_hosts
#退出服务器,在客户端使用-i 指定私钥地址连接服务器
ssh -i ./id_rsa root@192.168.241.250
配置主机名
[root@FairyQin ~]# hostname #其实在命令提示这里就直接显示了FairyQin当前主机名
或者
[root@FairyQin ~]# cat /etc/hostname
命令格式:hostnamectl [OPTIONS...] COMMAND ...
[root@FairyQin ~]# hostnamectl status #查看当前主机的设置
[root@FairyQin ~]#hostnamectl set-hostname 新的主机名
#这样改的主机名就不需要重启了(如果直接在配置文件中改的主机名的话就需要reboot)
原文地址:https://blog.csdn.net/balckghost_xin/article/details/130707427
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.7code.cn/show_27270.html
如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!