局域网内不同网段的设备互相连接设置

介绍

这个问题是我在实际中遇到的,如下图所示,我的主机有一个公司内网的IP,可以自动获取,也可以设置固定IP,不管怎么样,网段是172.16.0.xxx,不同的部分只是这里的xxx,我的主机IP是172.16.0.83。

但是有时候,我们会从别的地方拿过来一块开发板,而开发板内部的IP基本是写死的,假如这个IP是192.168.253.10,我们会使用一个交换机,然后把外网引进来,而我们的主机和板子分别使用两根网线接入交换机,这样,大家都可以上网。
在这里插入图片描述
但是这时候,主机和板子,虽然都在局域网内部,但是因为IP网段不同,无法ping通,自然更加无法通过ssh工具连接。这时候,一般情况就是,修改主机的IP,让他和板子在同一个网段。比如设置主机IP为192.168.253.101。只要和板子的IP不冲突,那么自然就可以ping通了,而且可以ssh连接。当我们不需要连接板子的时候,我们再把主机的IP改回来,如果不改回来,有可能无法上网。

这里,笔者通过在不改动本机IP的情况下,在本机ipv4属性里面再添加一个IP地址,而不是改变IP地址的办法,解决了不同网段互联的问题。具体的设置如下所示:

1、打开网络连接,找到本地网络->属性->ipv4->属性->高级:

在这里插入图片描述

2、在高级设置页面,我们添加一个IP,这个IP和板子在一个网段,我这里设置的是192.168.253.101:

在这里插入图片描述

3、设置完成即可生效,我们可以查看本机IP,会出现两个ipv4地址:

在这里插入图片描述

4、ping一下板子的IP:

在这里插入图片描述
结果显示是ping通的,这样,我们就可以不用改变本机IP,而是给他新增一个IP,就可以解决局域网内不同网段的设备互联互访了。

  • 3
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现局域网不同设备的 TCP 聊天室,可以使用 Qt 提供的网络模块。以下是一个简单的聊天室示例代码: 服务端: ``` // 创建服务器套接字 QTcpServer *server = new QTcpServer(this); connect(server, SIGNAL(newConnection()), this, SLOT(onNewConnection())); server->listen(QHostAddress::Any, 8888); // 处理新连接 void onNewConnection() { QTcpSocket *client = server->nextPendingConnection(); clients.append(client); connect(client, SIGNAL(readyRead()), this, SLOT(onReadyRead())); } // 处理数据 void onReadyRead() { QTcpSocket *client = qobject_cast<QTcpSocket *>(sender()); QByteArray data = client->readAll(); foreach (QTcpSocket *other, clients) { if (other != client) { other->write(data); } } } ``` 该示例中创建了一个服务端套接字,并在端口 8888 上监听。当有新连接时,将客户端套接字添加到 clients 列表中,并连接 readyRead 信号和 onReadyRead 槽函数。当有数据到达时,将数据发送给其他客户端。 客户端: ``` // 创建客户端套接字 QTcpSocket *socket = new QTcpSocket(this); connect(socket, SIGNAL(readyRead()), this, SLOT(onReadyRead())); socket->connectToHost(QHostAddress("192.168.0.100"), 8888); // 处理数据 void onReadyRead() { QByteArray data = socket->readAll(); showMessage(data); } // 发送数据 void sendMessage(QString message) { QByteArray data = message.toUtf8(); socket->write(data); } ``` 该示例中创建了一个客户端套接字,并连接 readyRead 信号和 onReadyRead 槽函数。在 connectToHost 函数中指定服务端的 IP 地址和端口号。当有数据到达时,将数据显示在界面上。发送数据时,将字符串转换为 QByteArray,并调用 write 函数发送。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值