- C
- WiFi6
- 리눅스
- menuconfig
- 자이언트얀
- 프로그래머스 c언어
- Wireless
- 콜드플레이 첫콘
- 네트워크
- nf_conntrack
- 취미생활
- 2025 콜드플레이
- 콜드플레이 첫콘 후기
- openwrt netfilter
- openwrt nat 테이블 확인하기
- nat 정의
- openwrt nat table
- hostapd
- programmers level2 C
- 제주도
- Linux
- ubuntu
- openwrt
- WiFi
- nat table 확인하기
- 비즈팔찌
- openwrt nf_conntrack
- nat 적용
- 동대문부자재시장
- C언어
- Today
- Total
목록C언어 (3)
Mandoo’s WLAN story

서버와 클라이언트가 소켓으로 패킷을 전달하는 과정에서 패킷이 손실되는 문제가 발생했고, 해결방법을 정리해보았다. 해결하는 과정을 세세하게 적어두었으니 부분부분 넘어가도 좋다. ▶ 통신 환경 통신 : 소켓통신 서버 : 웹 (웹 개발자가 따로 있어서 사용언어는 정확하지 않지만, JAVA로 추측됨) 클라이언트 : C언어로 개발된 리눅스용 프로그램 패킷 : 헥사값으로 이루어진 5000byte 이상의 패킷 ▶ 문제점 클라이언트가 패킷 전체를 전달받지 못하는 문제가 간헐적으로 발생 ▶ 원인 파악 과정 1. 네트워크 상태 체크 : 클라이언트 - 서버 ping체크 2. 클라이언트 C 소스코드에서 request 패킷 전송 전, 후 / response 패킷 수신 전, 후 마다 연결 상태 및 에러를 체크했다. 3. 서버에서..
리눅스 터미널에서 ifconfig로 조회되는 정보들은 ioctl 함수를 이용해 받아올 수 있다!(ip, netmask, mac주소, broadcast addr, destination addr 등) gateway 주소는 ifconfig로 조회되지 않기 때문에 popen을 쓰면 꽤 쉽게 받아올 수 있다! popen은 pipe 통신을 이용해 리눅스에서 명령어를 실행시키고 그 결과를 file 형태로 받아오는 것이다.(openwrt에서는 uci 명령어를 이용해 ubuntu나 cent os와는 사용법이 다르다.) 아래 코드를 보자#include#includeint main(){ char network_info[32] = {0,}; FILE *fp; fp = popen("uci get network.wan.ipa..

openssl을 이용해 암호화/복호화 하는 코드를 빌드하려고 하는데, 에러를 만나버렸다. 현재 사용하는 리눅스 버전에는 openssl이 포함되어 있길래 다른 툴은 설치하지 않고 gcc를 이용해 빌드했다. openssl/aes.h 를 가져오면서 compilation terminated 에러가 뜬다. (컴파일 종료 에러) 일단 apt를 업데이트 해주고 ssl 관련 개발을 위한 라이브러리인 libssl-dev를 설치해보자. > sudo apt-get install update > sudo apt-get install libssl-dev libssl-dev 설치까지 끝났으면 빌드할때 -l 플래그를 추가하면 빌드가 잘~~된다. gcc -o openssl openssl.c -lssl -lcrypto