티스토리 뷰
반응형
통신용 프로그램 또는 로그 기록을 위하여 도메인을 IP로 변환하는 경우가 있습니다.
서버 도메인을 사용하여 접속하는 경우에 IP값을 알고 싶은 경우도 있습니다.
여기 저기 정보들을 정리하여, 실제 동작되는 함수를 만들어 보았습니다.
제 PC에서는 잘 동작이 되는 것을 확인하였지만,
동작이 안된다거나 보완이 필요한 부분은 댓을 남겨주시면 고맙습니다.
[ 필수 Uses 절 ]
Winapi.winsock
[ 함수 정의 ] 도메인을 상수로 전달받아 문자열로 반환한다.
function GetIPAddressFromDomainName(Host: PAnsiChar): String;
[ 함수 본문 ] 도메인 주소를 전달받아 함수값으로 IP를 반환한다.
//
// 도메인으로 IP 반환
//
function GetIPAddressFromDomainName(Host: PAnsiChar): String;
var
WSAData1: WSADATA;
HostEnt: PHostEnt;
pAddr: PAnsiChar;
addr: in_addr;
begin
Result:='';
// GetHostByName 을 쓰기 위해 WSAStartup 을 한번 해줘야 함
if WSAStartup(MAKEWORD(2, 2), WSAData1)<>0 then Exit;
// WSAStartup 호출이 제대로 되지 않음을 체크(?)
if (LOBYTE(WSAData1.wVersion)<>2) or (HIBYTE(WSAData1.wVersion)<>2) then begin
WSACleanup;
Exit;
end;
// HostEnt 로 매개변수로 받아온 도메인이름의 정보를 받아옴
HostEnt := GetHostByName(Host);
if HostEnt=nil then Exit;
// PChar 형 변수로 ip 주소를 옮김
pAddr := HostEnt^.h_addr_list^;
if pAddr=nil then Exit;
// 옮긴 ip 주소를 in_addr 로 적절히 변환
addr.S_un_b.s_b1 := pAddr[0];
addr.S_un_b.s_b2 := pAddr[1];
addr.S_un_b.s_b3 := pAddr[2];
addr.S_un_b.s_b4 := pAddr[3];
// 변환된 ip 주소를 반환
Result := inet_ntoa(addr);
end;
반응형
'프로그래밍' 카테고리의 다른 글
[Delphi] 델파이 PC명칭 OS버젼 MAC주소 HDD볼륨 구하는 함수 (0) | 2023.02.06 |
---|---|
[Delphi] 델파이 내부IP 외부IP 구하는 함수 (0) | 2023.02.06 |
[Delphi] 델파이 암호화 인코딩 디코딩 관련 함수 (0) | 2023.02.06 |
[Delphi] 델파이 우리나라 환경에 맞는 전화번호 형식 반환 함수 (0) | 2023.02.05 |
[Delphi] 델파이 Byte - Hexa 문자열 변환 함수 (0) | 2023.02.05 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Hexa문자열변환
- 고객이음 #문자보내기 #단체문자 #고객관리 #회원관리 #콜백문자 #콜백서비스 #자동문자
- 델파이
- 유기농건강차
- 폼위치저장
- 델파이날짜연산 #델파이날짜함수 #날짜연산 #날짜함수 #델파이
- 외부IP구하기
- 명륜유치원
- 전화특허
- 한양도성둘레길
- 부재중문자
- 그레이엄빌
- 소형전동드릴
- 소형전기드릴
- 성북동부자마을
- 도메인IP변환
- 통화매니저
- 선물하기좋은차
- 통화매니저 #KT통화매니저 #발신자정보표시 #고객관리 #콜백문자 #문자보내기
- 동부시립병원
- 고객관리 #회원관리 #휴대폰주소록 #문자보내기 #콜백문자 #콜백서비스 #자동문자 #통화매니저
- 미니드릴
- 문자보내기 #PC문자보내기 #콜백문자 #콜백서비스 #자동문자 #통화매니저
- 전화번호대시넣기
- 와룡공원드라마촬영장소
- 성북동판자촌
- 가정용전기드라이버
- 내부IP구하기
- 가정용전동드라이버
- 가정용전기드릴
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함