기본 색인 | 섹션 3 | English | 日本語 | Deutsch | 옵션 |
#include <netdb.h>extern int h_errno;
struct hostent { char *h_name; /* 호스트의 정식명 */ char **h_aliases; /* 별명 리스트 */ int h_addrtype; /* 호스트 주소 타입 */ int h_length; /* 주소의 길이 */ char **h_addr_list; /* 네임서버로부터의 주소 리스트 */ }; #define h_addr h_addr_list[0] /* 주소, 후방 호환용 */
이 구조체의 멤버는 다음과 같습니다.
h_name | |
호스트의 정식명. | |
h_aliases | |
호스트의 별명 (앨리어스(alias))의 눌로 끝나는 배열. | |
h_addrtype | |
돌려주어지는 주소의 타입이며, 통상은 AF_INET | |
h_length | |
주소의 바이트수에 의한 길이. | |
h_addr_list | |
호스트의 네트워크 주소의 눌로 끝나는 배열. 호스트 주소는 네트워크 바이트 오더로 돌려주어집니다. | |
h_addr | |
h_addr_list 에 있는 최초의 주소이며, 후방 호환용. | |
네임서버를 사용하는 경우, 이름이 닷으로 끝나지 않을 때는 gethostbyname() 및 gethostbyname2() (은)는 이름이 붙은 호스트를, 현재의 도메인과 부모의 도메인으로부터 검색합니다. 이름에 닷이 포함되지 않고, 한편 환경 변수 " HOSTALIASES" 에 앨리어스(alias) 파일의 이름이 포함되어 있는 경우는, 입력명에 적합하는 앨리어스(alias)가, 우선 앨리어스(alias) 파일로부터 검색됩니다. 도메인 검색의 수속과 앨리어스(alias) 파일의 서식에 대해서는, hostname(7) (을)를 참조해 주세요.
gethostbyname2() 함수는 gethostbyname() 의 발전형으로, AF_INET 이외의 주소 패밀리, 예를 들어 AF_INET6 에서의 검색을 가능하게하기 위한의 것입니다. 다만 현재는, af 인수에 AF_INET (을)를 지정할 필요가 있습니다. 다른 값을 지정하면(자) gethostbyname2() 함수는, h_errno (을)를 NETDB_INTERNAL (으)로 설정한 다음에, NULL (을)를 돌려줍니다.
sethostent() 함수는, 문의하고 시에 접속되었다 TCP 소켓을 사용하고 싶은 경우에 사용할 수 있습니다. stayopen 플래그가 0 이 아니면, TCP 에 의해 모든 문의를 네임서버에 보내, gethostbyname(), gethostbyname2(), gethostbyaddr() 의 각각 호출해 후에도, 접속을 보관 유지하도록(듯이) 옵션을 설정합니다. 플래그가 0 때, 문의는 UDP 데이터 그램을 사용해 실행됩니다.
endhostent() 함수는 TCP 접속을 클로우즈 합니다.
herror() 함수는 진단 출력에 메세지를 써냅니다. 진단 출력은 캐릭터 라인 파라미터 s 라고 정수 캐릭터 라인 ": " 라고 h_errno 의 값에 대응하는 메세지로 구성됩니다.
hstrerror() 함수는, err 파라미터의 값에 대응하는 메세지 텍스트의 캐릭터 라인을 돌려줍니다.
/etc/hosts
/etc/host.conf /etc/resolv.conf | |
변수 h_errno (은)는 다음의 값을 취할 수 있습니다.
HOST_NOT_FOUND | |
지정한 이름의 호스트가 미지입니다. | |
TRY_AGAIN | 이것은 통상은 일시적인 에러로, 로컬 서버가 공식 서버 (으)로부터 응답을 얻을 수 없었던 것을 의미합니다. 잠시 후 재차 시도하면(자) 성공한다 경우가 있습니다. |
NO_RECOVERY | 하등의 예기치 않은 서버 에러가 발생했습니다. 이것은 회복 불능인 에러입니다. |
NO_DATA | 요구된 이름은 유효합니다만, IP 주소가 없습니다. 이것은 일시적인 에러가 아닙니다. 지정한 호스트명이 네임서버에는 알려져 있는 것에도 불구하고, 대응하는 주소가 없다고 하는 의미입니다. 이 네임서버에 대해서 같은 도메인명으로 별도인 타입의 요구를 실시하면, 회답을 얻을 수 있을지도 모릅니다. 예를 들어 메이르포워다가 그 도메인에 등록되어 있는 경우가 있습니다. |
gethostent() 함수는, /etc/hosts 파일의 다음의 행을 읽어들입니다. 이 때, 필요하면 파일을 오픈합니다.
sethostent() 함수는 파일 /etc/hosts (을)를 오픈 혹은 되감기 합니다. stayopen 인수가 0 이 아니면, gethostbyname(), gethostbyname2(), gethostbyaddr() 의 각각의 호출의 뒤, 파일은 클로우즈 되지 않습니다.
endhostent() 함수는 파일을 클로우즈 합니다.
GETHOSTBYNAME (3) | May 25, 1995 |
기본 색인 | 섹션 3 | English | 日本語 | Deutsch | 옵션 |
Ben Bullock이 유닉스 매뉴얼 페이지에서 서비스에 대한 의견을 주시기 바랍니다. Privacy policy.
“ | Our grievance is not just against Unix itself, but against the cult of Unix zealots who defend and nurture it. They take the heat, disease, and pestilence as givens, and, as ancient shamans did, display their wounds, some self-inflicted, as proof of their power and wizardry. We aim, through bluntness and humor, to show them that they pray to a tin god, and that science, not religion, is the path to useful and friendly technology. | ” |
— The Unix Haters' handbook |