프로젝트 소개

Oryx는 eBPF를 사용하여 Linux에서 네트워크 트래픽을 스니핑하는 터미널 사용자 인터페이스(TUI) 애플리케이션이다. 그래픽 패킷 분석기 없이 명령줄에서 패킷을 관찰하고 분석하려는 사용자를 대상으로 한다. 프로젝트에서 설명하는 주요 기능: - 터미널에서 실시간 트래픽 검사 및 시각화. - 종합적인 트래픽 통계. - 방화벽 기능. - 메트릭 탐색기. - 캡처된 데이터 탐색을 위한 퍼지 검색. 지원 프로토콜은 계층별로 분류된다: - 전송 계층: TCP, UDP, SCTP. - 네트워크 계층: IP(v4 및 v6), ICMP(v4 및 v6), IGMP(v1, v2, v3). - 링크 계층: ARP. 요구 사항 및 플랫폼 참고 사항: - Linux 기반 운영 체제가 필요하다. - 모든 기능이 제대로 작동하려면 Linux 커널 버전 6.10 이상이 권장된다. - Debian 또는 Ubuntu의 경우 README에는 Debian 13(Trixie) 이상, Ubuntu 24.04(Noble) 이상의 최소 버전이 명시되어 있다. - 아이콘이 올바르게 표시되려면 Nerd Fonts를 설치해야 할 수 있다. 설치 옵션: - 프로젝트 릴리스 페이지에서 사전 빌드된 바이너리를 사용할 수 있다. - Arch Linux에서는 pacman(`pacman -S oryx`)을 사용하여 extra 저장소에서 패키지를 설치할 수 있다. - 소스에서 빌드하려면 rust-src 구성 요소가 포함된 Rust nightly 툴체인, bpf-linker 도구가 필요하며, 그런 다음 `cargo xtask build --release`를 실행하면 `target/release/oryx`에 실행 파일이 생성되어 `$PATH`에 배치할 수 있다. 사용법: - 패킷 캡처에는 상승된 권한이 필요하므로 도구는 `sudo oryx`로 시작한다. - 명령줄 인수가 지원되며 `oryx --help`로 사용 가능한 옵션을 나열한다. 프로젝트 및 기여 참고 사항: - 프로젝트는 엄격한 LLM 기여 금지 정책을 명시하고 있다. - 풀 리퀘스트는 사전 이슈 또는 논의 후에만 제출해야 한다. - 풀 리퀘스트는 작고 집중적으로 유지해야 한다. - 로고는 @ling0x가 디자인했다. - 프로젝트는 GPLv3에 따라 라이선스가 부여된다.