▲neo 8달전 | parent | favorite | on: GN⁺: JIT WireGuard 기술(fly.io)Hacker News 의견 리눅스 커널의 WireGuard는 요청 시 피어를 설치하는 기능이 없어 설계 구축에 문제가 발생한다고 합니다. 리눅스 커널의 WireGuard가 요청에 따라 피어를 설치하는 기능 부재로 설계에 어려움이 있음. 런타임에 피어를 추가할 수 있지만, 인터페이스에 추가하기 전에 피어를 인증하여 불필요한 항목을 방지하려는 것으로 보임. eBPF 필터를 사용하여 인증된 상대방과의 암호키 라우팅 기반 연결을 직접 관리하고, 검증이 완료되면 피어를 인터페이스에 추가하고 타임아웃 후 제거함. HTTP 요청이 메시지 큐를 통한 라우팅보다 더 신뢰성이 있다는 데는 동의하지만, NATS로 인해 손실된 메시지가 서비스에 큰 영향을 미쳤다는 것에 놀랐습니다. 직접 HTTP 요청이 메시지 큐보다 신뢰성이 높다는 의견에 동의하지만, NATS에서 메시지 손실이 서비스에 상당한 영향을 미쳤다는 점에 대해 의아함. 메시지 손실 시 NATS가 재전송을 시도할 것으로 예상되지만, 눈에 띄는 신뢰성 문제가 발생한 이유에 대해 궁금증을 표함. 최근 실험적인 프로젝트를 홍보하고 싶습니다. 사용자 공간 WireGuard 피어로 작동하는 Go 앱을 구축하는 데 관심이 있다면 확인해 보세요. 사용자 공간 WireGuard 피어로 작동하는 Go 앱을 구축하는 데 관심 있는 사람들을 위해 자신의 프로젝트를 소개함. wireguard-go의 우수한 작업을 기반으로 하되, 라이브러리 사용에 더 적합하도록 단순화하고자 함. 서비스 메시 구축에 관심이 있으며, 다양한 언어 지원이 어려울 수 있지만 소켓 API를 구현할 수 있을 것으로 생각함. WireGuard의 암호화에 대한 하드웨어 가속이 아직 보이지 않아 mTLS와 경쟁하기 어려울 수 있음을 언급함. 고속/보안 네트워킹 분야에서 프리랜서로 활동하고 있으며, 관심 있는 사람은 연락 바람(이메일 프로필에 있음). WireGuard를 WebSockets 위에 터널링하는 것이 기본 설정이라는 것이 흥미롭습니다. 성능에는 좋지 않지만 flyctl이 사용되는 DevOps 작업에는 적합할 것입니다. WireGuard를 WebSockets를 통해 터널링하는 것이 기본 설정이라는 사실에 주목함. 성능에는 최적이 아니지만, flyctl이 사용되는 DevOps 작업에는 문제가 없을 것으로 예상함. QUIC/HTTP3의 미래에 대해 궁금해하며, 네트워크 운영자들이 UDP를 443 포트에서 차단하는 대신 제대로 처리할 가능성에 대해 의문을 제기함. 우리는 발신자로서 피어를 설치할 수 있으며, flyctl이 응답자입니다. 리눅스 커널은 flyctl로 WireGuard 연결을 시작합니다. 이 방법은 작동하며, 프로토콜은 서버와 클라이언트가 누구인지 크게 신경 쓰지 않습니다. 새로운 연결이 가능한 한 빨리 설치됩니다. 발신자로서 피어를 설치하고 flyctl이 응답자로서 리눅스 커널이 WireGuard 연결을 시작하는 방식에 대해 설명함. 프로토콜이 서버와 클라이언트의 역할에 크게 구애받지 않으며, 새로운 연결이 매우 빠르게 이루어질 수 있음을 언급함. 내 스타트업은 거의 1년 동안 Fly를 사용했습니다. 코드를 배포된 코드로 1분 이내에 전환하는 핵심 기능은 아름답습니다. 새 노드를 몇 초 만에 스핀업/다운할 수 있습니다. 스타트업이 Fly를 거의 1년간 사용한 경험을 공유함. 코드를 빠르게 배포할 수 있는 기능에 대해 긍정적으로 평가하지만, 회사가 다소 미성숙하다고 느낌. API 서버가 Fly에서 48시간 동안 접근 불가능했던 경험과, "db" 제품의 일관성 없는 연결 끊김 문제를 언급함. Fly의 API 접근이 자주 다운되어 새로운 서비스 수정을 배포하는 데 문제가 있었음을 지적함. 배포 경험은 그리워하지만, GCP의 Cloud Run을 사용하는 것이 더 만족스러움을 표현함. “flyctl을 실행할 때마다, 우리의 사랑스러운, 방대한 CLI는 공중에서 TCP/IP 스택을 만들어내고, 고유한 IPv6 주소를 가지고 직접 Fly Machines과 통신합니다.” flyctl 실행 시 TCP/IP 스택을 즉석에서 생성하고 고유한 IPv6 주소를 통해 Fly Machines과 직접 통신한다는 설명에 대한 궁금증을 표함. 초기 핸드셰이크 패킷이 네트워크 스택으로 재전송되는 것을 막는 것은 무엇인가요? 그렇게 하면 패킷 손실이 없을 것 같습니다. 또한 eBPF 필터에서 "udp[8] = 1"을 확인하는 목적은 무엇인가요? 초기 핸드셰이크 패킷이 네트워크 스택으로 재전송되는 것을 방지하는 메커니즘과 eBPF 필터에서 특정 UDP 패킷 값을 확인하는 이유에 대한 질문을 제기함. 임의의 도커화된 애플리케이션을 Fly.io에 배포하려면 어떻게 해야 하나요? 제 돈을 가져가세요 도커화된 애플리케이션을 Fly.io에 배포하는 방법에 대한 관심과 의지를 표현함. 다른 모든 사람들을 위해, Netmaker를 뻔뻔스럽게 홍보하겠습니다. Netmaker를 사용한 만족스러운 경험을 공유하며, AWS VPC에 대한 개인적인 접근 필요성을 언급하고, Netmaker가 더 널리 채택되기를 희망함.
Hacker News 의견