1
현재 학사 학위 논문의 시작 단계에서 작업 중입니다. 문제는 게이트웨이 (일명 라우터)를 구현하는 것입니다. 나는 현재 원시 소켓을 열려고 노력하고있어 이더넷 패킷을 열어서 다른 종류의 필드를 확인한다.원시 소켓 만들기 - Debian + Codeblocks
저는 Codeblocks IDE를 사용하여 데비안 VM에 C++ 코드를 작성하고 있습니다. 시도는 다음과 같은 코드를 통해 원시 소켓을 열 때
나는 오류가 말을 얻을 :
Error creating raw socket: Operation not permitted
코드 : 좀 주위를 검색 한하지만 난 고칠 수없는 것
int CreateRawSocket(int protocol_to_sniff)
{
int s;
if((s = socket(PF_PACKET, RAW_SOCK, htons(protocol_to_sniff))) == -1)
{
perror("Error creating raw socket");
exit(-1);
}
return s;
}
int main()
{
int s = CreateRawSocket(ETH_P_ALL);
}
문제는 무엇인지 알고 있다고 생각합니다. 지금까지 나는 그것이 사용 권한에 문제가 있음을 알았지 만, 코드 블럭 sudo 사용 권한을 부여하는 방법에 대한 단서가 없습니다.
아이디어가 있으십니까?