0
SOCK_RAW
소켓을 통해 다른 컴퓨터의 프로세스와 통신하는 코드를 작성하고 있습니다.소켓 프로그래밍 PF 패킷 소켓
다른 컴퓨터의 IP 주소를 알고 있습니다.
I 오전 시간에 sockaddr_ll.sll_addr
값을 한 바이트를 작성하는 즉, 문제를 해결할 것을 알고 뭔가
socket_address.sll_addr[0] = 0x00;
socket_address.sll_addr[1] = 0x04;
socket_address.sll_addr[2] = 0x75;
socket_address.sll_addr[3] = 0xC8;
socket_address.sll_addr[4] = 0x28;
socket_address.sll_addr[5] = 0xE5;
하지만 난의 문자 배열이있을 때 같은 일을하는 방법을 모른다처럼 다른 기계의 16 진수 주소를 가진 6 바이트.
나는의 진수 주소를 인쇄 할 수 있어요 ':'ptr
는 문자 배열 배열입니다
printf("%.2x",*ptr++ & 0xff);
를 사용하는 형식입니다.
그러나이 값을 사용하여 sll_addr
바이트를 채우는 방법은 무엇입니까?
나는 혼란 스럽다. 왜 당신은 단지'socket_address.sll_addr [0] = ptr [0];'etc? – Wutz
아마도 맞을 것입니다. 내 대답을 게시 할 때 어떻게 든 OP 6 *** *** 바이트 문자 배열을 언급하는 OP 무시하지만 자동으로 문자열을 (17 + 1bytes 될) 원본 것으로 가정합니다. @ 와츠 – alk