CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect

一、前言

最近在配置服务器,DHCP模式下IP地址不固定,每次SSH远程登录连接不上,都要查看新动态分配的IP地址重新配置,感觉些许麻烦,于是给机器配置了静态固定IP

动态主机配置协议DHCP(Dynamic Host Configuration Protocol)是一种网络管理协议,用于集中对用户IP地址进行动态管理和配置。
DHCP于1993年10月成为标准协议,其前身是BOOTP协议。DHCP协议由RFC 2131定义,采用客户端/服务器通信模式,由客户端(DHCP Client)向服务器(DHCP Server)提出配置申请,DHCP Server为网络上的每个设备动态分配IP地址、子网掩码、默认网关地址,域名服务器(DNS)地址和其他相关配置参数,以便可以与其他IP网络通信。

注意:以下所有linux指令操作均在英文输入法状态下输入。

二、配置

2.1 查看本机IP配置

WIN+R调出运行窗口,输入CMD打开命令行界面,输入ipconfig命令查看本机IP配置:
记下IPV4地址子网掩码默认网关这三个值,待会配置CentOS网络时需要参考配置
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第1张图片

2.2 登录CentOS配置其网络配置文件

2.2.1 查看网络接口和网络配置文件名称

一般来说,Linux的网络接口的名称ens3eth0eth1等类似格式为主。可以使用nmcli device status命令查看其名称:
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第2张图片

注:RHELCentOS系统默认使用NetworkManager来提供网络服务,是一种 动态管理网络配置 的守护进程,能够让网络设备保持连接状态 。可以使用nmcli命令来管理Network Manager服务。nmcli是一款基于命令行的网络配置工具,功能丰富、参数众多。可以查看网络信息或网络状态
nmcli con show +网卡接口名称 (我这里就是 nmcli con show ens33 显示的信息更加详细 。)

#NetworkManager相关命令
systemctl stop NetworkManager 临时关闭
systemctl disable NetworkManager 永久关闭网络管理命令
systemctl start network.service 开启网络服务

网络配置文件的位置一般为:/etc/sysconfig/network-scripts网络配置文件名称一般为ifcfg-网络接口的格式,我这里是ifcfg-ens33
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第3张图片

2.2.2 配置网络配置文件

sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33

BOOTPROTO:更改为static,表示您要手动分配IP地址 ;dhcp表示动态分配IP地址。
ONBOOT:更改为yes,表示在启动时激活网络接口
IPADDR:分配给服务器的新IP地址。
NETMASK:更改为您的子网掩码,通常为255.255.255.0
GATEWAY:更改为您的网络的默认网关地址,例如192.168.1.1

上面的有些配置如果在配置文件中不存在,则需要手动添加

注意:配置**Linux静态IP**时,需要**参考本机的IP相关信息**,以免配置的信息冲突,造成配置失败。
1、IP地址要和本机的IP处于同一个网段 中,简单来说前三位相同,后一位值不同,且小于255。
如本机是192.168.1.9,那么linux配置的IP为192.168.1.162、子网掩码NETMASK与本机子网掩码一致,本机为255.255.255.03、默认网关GATEWAY与本机默认网关一致,本机为192.168.1.1

i键进入insert模式,上下左右方向键调整光标位置
我个人配置的情况如下:
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第4张图片
配置完成后,按ESC键退出i模式(insert)模式,按:wq退出和保存

使用ifconfig或者ip addr命令查看IP等配置是否生效:
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第5张图片

2.3 重启网络

service network restart

或(两个命令都执行下也可以)

sudo systemctl restart network 

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第6张图片

三、测试静态IP

3.1 测试

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第7张图片
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第8张图片

3.2 ping不通和SSH连接不上的问题

安装SSH服务

#查看ssh服务状态
#查看ssh服务状态(如果Actice显示为avtive(running)则代表正常工作中,反之则需要使用start命令手动开启)
sudo systemctl status sshd

#SSH服务没有运行,可以使用start命令启动:
sudo systemctl start sshd

#没有安装SSH服务,可以使用以下命令**安装并启动**:
sudo yum install -y openssh-server
sudo systemctl start sshd    启动
sudo systemctl enable sshd   开机自启

SSH连接不上的问题
第一次安装可能不会有这个问题,我自己的机器,时而能连接时而连接不上:

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第9张图片

ping不通的问题:

本机(windows系统)ping Linux时报错:无法访问目标主机
Linux ping本机时报错:Destination Host Unreachable

3.3 解决ping不通和SSH连接不上的问题

解决:将网卡设置由自动改为指定网卡

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第10张图片

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第11张图片
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第12张图片
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第13张图片
重启虚拟机,尝试ping和SSH连接。
xshell连接成功:
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第14张图片
FinalShell连接成功:
CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第15张图片

四、解决Centos使用SSH连接自动断开问题

使用Centos时,如果在一定时间内无操作,系统会自动断开连接,可以通过修改配置来解决这个问题

#修改/etc/ssh/sshd_config文件
vi /etc/ssh/sshd_config
找到:
 #ClientAliveInterval 0
 #ClientAliveCountMax 3
修改为:
# ClientAliveInterval参数表示客户端的存活检测间隔、 ClientAliveCountMax 参数表示失败检测的最大次数
 ClientAliveInterval 100
 ClientAliveCountMax 15

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第16张图片
i键进入insert模式,上下左右方向键调整光标位置
配置完成后,按ESC键退出i模式(insert)模式,按:wq退出和保存

修改完成后使用**cat命令**查看修改是否成功保存(如下图):
cat  /etc/ssh/sshd_config

CentOS桥接模式下设置静态IP并解决java.net.ConnectException: Connection timed out: connect_第17张图片

修改 ClientAliveInterval参数和 ClientAliveCountMax 参数的值并验证保存成功后**,重启SSHD服务,使得修改生效**

#修改ClientAliveInterval参数和 ClientAliveCountMax 参数的值并验证保存成功后,重启SSHD服务,
使得修改生效
systemctl restart sshd

可以使用下面的命令查看重启后的SSHD是否工作正常和是否需要手动开启:

#查看ssh服务状态(如果Actice显示为avtive(running)则代表正常工作中,反之inactive(dead)则需要使用start命令手动开启)
sudo systemctl status sshd

#SSH服务没有运行,可以使用start命令启动:
sudo systemctl start sshd

五、防火墙相关
有时候防火墙如果防火墙禁用了SSH服务的端口,默认为22,也是会出现TimeOUT等问题等。
此时可以直接禁用防火墙设置防火墙开放SSH服务的22端口

#CentOS7查看防火墙状态(“active(running)为开启,disavtive(dead)为关闭)
 systemctl status firewalld.service

#CentOS7关闭防火墙
systemctl stop firewalld
或
systemctl stop firewalld.service

#CentOS7启动防火墙
systemctl start firewalld
或
systemctl start firewalld.service

#CentOS7禁止开机启动防火墙(开机禁用防火墙自启命令 )
systemctl disable firewalld
或
systemctl disable firewalld.service

#CentOS7开机启动防火墙
systemctl enable firewalld
或
systemctl enable firewalld.service

#Ubuntu查看防火墙状态
sudo ufw status

#Ubuntu打开/关闭防火墙
sudo ufw enable/disable

#Ubuntu如果在系统上启用了防火墙,要设置打开SSH的端口【推荐】
sudo ufw allow ssh

#Ubuntu设置防火墙开放SSH服务的22端口
sudo ufw allow 22/tcp 允许所有的外部IP访问本机的22/tcp (ssh)端口



五、参考资料

解决Centos使用ssh连接自动断开
Centos 7 SSH连接超时自动断开解决方案
VMware虚拟机下Centos7 桥接方式网络配置完整步骤
vmware centos7 桥接模式,复制物理网络连接状态下设置为固定IP
finalshell连接VM虚拟机报错,java,net.ConnectException: Connection timed out: connect
finalshell连接虚拟机(centos7)超时
VMware虚拟机中 无法勾选’将主机虚拟适配器连接到此网络’的问题
VM桥接模式下 复制物理网络连接状态选项有什么作用?
vmware设置桥接时复制物理网络连接状态的解释,桥接与NAT的区别等
Virtual Machines with side channel mitigations enabled may exhibit performance degradation (79832)
启用了侧通道缓解措施的虚拟机,性能可能会下降
子网掩码
centOS7永久关闭防火墙(防火墙的基本使用)
linux常用命令和关闭防火墙
什么是DHCP?

你可能感兴趣的:(2023,linux,centos,桥接模式,tcp/ip)