手动修改ARM Linux的静态IP和用QT获取和修改IP
、vi /etc/network/interfaces
# 找到“# Wired or wireless interfaces”
、注释掉 iface eth0 inet dhcp 这是自动获取ip地址
、增加下面语句:
iface eth0 inet static
address 192.168.1.79
netmask 255.255.255.0
network 192.168.1.0
gateway 192.168.1.1
、保存
、/etc/init.d/networking restart
如何用QT获取和修改IP【转载】
http://blog.csdn.net/a15868717540/article/details/7165287
这是第一种方式
//读取部分
QSettings *ConfigIni = new QSettings("/etc/eth0-setting",QSettings::IniFormat,);
ui->ipInfoLineEdit->setText(ConfigIni->value("IP").toString());//IP地址
ui->maskInfoLineEdit->setText(ConfigIni->value("Mask").toString()); //子网掩码
ui->gatewayInfoLineEdit->setText(ConfigIni->value("Gateway").toString());//子网掩码
ui->dnsInfoLineEdit->setText(ConfigIni->value("DNS").toString());//DNS
ui->macInfoLineEdit->setText(ConfigIni->value("MAC").toString());//mac
//修改部分
void ipset::ipconfig_set_infile()
{
//删除原有配置文件
QDir rmfile;
rmfile.remove("/etc/eth0-setting");//WINDOWS下就可以不用这两句
QSettings *ipConfigIni = new QSettings("/etc/eth0-setting",QSettings::IniFormat,);
ipConfigIni->setIniCodec("UTF-8"); //设置文件格式为UTF-8
ipConfigIni->setValue("IP",ui->ipInfoLineEdit->text());//写入配置文件中Ip配置参数
ipConfigIni->setValue("Mask",ui->maskInfoLineEdit->text());//写入配置文件中Mask配置参数
ipConfigIni->setValue("Gateway",ui->gatewayInfoLineEdit->text());//写入配置文件中Gateway配置参数
ipConfigIni->setValue("DNS",ui->dnsInfoLineEdit->text());
ipConfigIni->setValue("MAC",ui->macInfoLineEdit->text());
}
函数时用Qt下的QSttings。相关内容大家自己看
需要注意的是在linux下,覆盖不了原文件,需要调用QDir::remove函数,先删除再生成。
WINDOWS下就直接覆盖的。
第二种方法是采用QT自带的函数QList<QNetworkInterface
用这个类可以获取系统底层的网络参数,经过实践是可行的,我参考的文章:http://qt.csdn.net/articles.aspx?pointid=489&pointid2=7
/*QList<QNetworkInterface> list = QNetworkInterface::allInterfaces();
//获取所有网络接口的列表
foreach(QNetworkInterface interface,list)
{ //遍历每一个网络接口
if(interface.name()=="eth0")//我的端口是eth0,你的需要根据自己的来判断
{
qDebug() << "Device: "<<interface.name();
//设备名
qDebug() << "HardwareAddress: "<<interface.hardwareAddress();
//硬件地址
QList<QNetworkAddressEntry> entryList = interface.addressEntries();
//获取IP地址条目列表,每个条目中包含一个IP地址,一个子网掩码和一个广播地址
foreach(QNetworkAddressEntry entry,entryList)
{//遍历每一个IP地址条目
if( entry.ip().toString().size() < 16)//区分IPV6和IPV4
{
qDebug()<<"IP Address: "<<entry.ip().toString();
//IP地址
qDebug()<<"Netmask: " <<entry.netmask().toString();
//子网掩码
qDebug()<<"Broadcast: "<<entry.broadcast().toString();
//广播地址
ui->ipInfoLineEdit->setText(entry.ip().toString());
ui->maskInfoLineEdit->setText(entry.netmask().toString());
ui->gatewayInfoLineEdit->setText(entry.broadcast().toString());*/
上面这段是参考网上的代码写的,根据网卡数量需要,自己写下判断就行了。
主要是在红色字体这些地方。自己根据需求来
这个是我的第一次总结。呵呵,支持下
手动修改ARM Linux的静态IP和用QT获取和修改IP的更多相关文章
- Qt获取本机IP地址
Qt获取本机IP地址: Qt版本:4.8.6 #include <QtNetwork/QNetworkInterface.h> QString ipAddr; QList<QHost ...
- qt获取本机ip
//获取本机IP QString getIP(QString localHost) { QString ipAddr; #if 0 QList<QHostAddress> AddressL ...
- Qt 获取本机ip地址 【转自 CSDN jpchen609
QString str; QHostInfo info=QHostInfo::fromName(QHostInfo::localHostName()); //定义一个HostInfo的对象然后对这个对 ...
- QT获取本机IP和Mac地址
#include <QNetworkInterface> #include <QList> void MainWindow::getIPPath() { QString str ...
- Linux C 网络编程 - 获取本地 ip 地址,mac,通过域名获取对应的 ip
获取本地 ip 地址,mac,通过域名获取对应的 ip, 是网络编程可能遇到的比较常见的操作了,所以总结如下(封装了3个函数), 直接上代码: #include <stdio.h> #in ...
- linux获取外网ip
引言:目前获取ip的方法中,ifconfig和ip获取函数得到的都是内网ip.有时候需要获取外网ip,目前通用的做法,是向外部服务器发送请求,解析外部服务器响应,从而得到的自己的外网ip.linux下 ...
- 获取本机IP和主机名
如果是在windows环境: 使用InetAddress.getLocalHost()方法即可 package com.datongsoft.wg.common.util; import java.n ...
- 7个获取访问者真实IP的方法,速学!!!
通常情况下,网站访问并不是简单地从用户的浏览器直达服务器,中间可能部署有CDN.WAF.高防.例如,采用这样的架构:“用户 > CDN/WAF/高防 > 源站服务器” .那么,在经过多层代 ...
- JAVA获取计算机的IP、名称、操作系统等信息
[java] view plaincopyprint? import java.io.BufferedReader; import java.io.InputStream; import java.i ...
随机推荐
- 【POJ 3764】 The xor-longest path
[题目链接] http://poj.org/problem?id=3764 [算法] 首先,我们用Si表示从节点i到根的路径边权异或和 那么,根据异或的性质,我们知道节点u和节点v路径上的边权异或和就 ...
- 解析HTML文件
#!/usr/bin/env python3 # -*- coding: UTF-8 -*- from bs4 import BeautifulSoup import operator import ...
- insufficient space
- 使用Github做服务器展示前端页面
1)在github上创建自己一个项目,项目名称必须是你的github账号名.github.io 譬如 fk123456.github.io 因为我已经创建了,所以显示名字重复. 2)使用命令行的方式 ...
- A - Word
Problem description Vasya is very upset that many people on the Net mix uppercase and lowercase lett ...
- A - Beautiful Matrix
Problem description You've got a 5 × 5 matrix, consisting of 24 zeroes and a single number one. Let' ...
- Asp.net MVC Checkbox控件 和 Nullable<bool>, 或bool?类型
@Html.CheckBoxFor() 这个方法生成两个Input HTML标签,不明白为什么这样,如果数据库是Nullable<bool>类型,就会报错. 网上的解决方法是这样: 方法一 ...
- Unity引擎GUI之Slider和Scrollbar
Slider(滑动条):是一个主要用于形象的拖动以改变目标值的控件,他的最恰当应用是用来改变一个数值,最大值和最小值自定义,拖动滑块可在此之间改变,例如改变声音大小. Scrollbar(滚动条):是 ...
- YOLO (You Only Look Once)
YOLO (You Only Look Once) dl cnn object detection 一.YOLO YOLO是一个实时的目标检测系统.最新的V2版本在Titan X 上可以每秒处理 ...
- 获取 PHPstorm编辑器 注册码地址
网址: http://idea.lanyus.com/ 注册码有效期为2016年11月24日至2017年11月23日使用前请将“0.0.0.0 account.jetbrains.com”添加到hos ...