본문 바로가기
프로그래밍/기타

[Qt] 네트워크 인터페이스 IP 가져오는 방법 (자기 IP 알아내기, QNetworkInterface)

by GhostWeb 2021. 5. 15.
반응형

 

○ 필요 헤더

#include <QHostAddress>
#include <QNetworkInterface>

○ 네트워크 인터페이스 전체 주소 가져오기

QList<QHostAddress> addrList = QNetworkInterface::allAddresses();

○ 네트워크 인터페이스 전체 주소 중 IPv4 주소만 출력하기

#include <QHostAddress>
#include <QNetworkInterface>
#include <QDebug>	// 디버그 출력용

QList<QHostAddress> addrList = QNetworkInterface::allAddresses();

foreach(QHostAddress addr, addrList)
{
    if (0 < addr.toIPv4Address())
    {
        qDebug() << addr.toString();
    }
}

- 실행 결과

"192.168.56.1"
"127.0.0.1"

- IPv4, IPv6 인지 확인

// IPv4
quint32 QHostAddress::toIPv4Address(bool *ok) const

// IPv6
Q_IPV6ADDR QHostAddress::toIPv6Address() const
반응형