Skip to content

Commit

Permalink
글이 좀 더 매끄럽도록 문장 수정
Browse files Browse the repository at this point in the history
  • Loading branch information
wusub.shin@softcamp.co.kr committed Dec 6, 2024
1 parent 077066f commit 77bc02a
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions pages/network/p2p-udp-hole-punching.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ udp 홀 펀칭이란 아웃바운드만 열고 NAT 간에 UDP 통신이 가능

![picture 0](./images/p2p-udp-hole-punching-1733467444946.png)

이미지에서 `중간 이미지` 가 좀 어려울 수 있다
세개의 이미지 중에서 `중간 이미지` 가 좀 어려울 수 있다

`(1) Request Connection to B``(2) Forward B's Endpoints to A` 이 부분은 그냥저냥 이해가 되는데

Expand All @@ -16,22 +16,22 @@ udp 홀 펀칭이란 아웃바운드만 열고 NAT 간에 UDP 통신이 가능

최초 A가 B의 퍼블릭 주소로 보내는 UDP 패킷은 B의 NAT 입장에서 인바운드 패킷이고, B의 NAT는 인바운드는 하나도 열어놓지 않았다.

앞서 B의 NAT는 Server S에게 A의 퍼블릭 주소를 획득하기 위해 보냈던 요청으로 인하여
앞서 B의 NAT는 Server S에게 A의 퍼블릭 주소를 획득하기 위해 보냈던 요청(좌측 이미지 참고)으로 인하여
`아웃바운드``orgin-src:10.1.1.3:4321 / NAT changed-src:138.76.29.7:31000 / dst:18.181.0.31:1234` 이라는 맵핑 정보만 저장해놓았기에

`Server S(18.181.0.31:1234)` `138.76.29.7:31000` 로 요청을 보낼 경우만 패킷이 허용되는 상태이다
`Server S(18.181.0.31:1234)` `138.76.29.7:31000` 로 요청을 보낼 경우만 패킷이 허용되는 상태이다

A가 B로 보내는 최초 요청 `(a) 138.76.29.7:31000` 이 실패했지만

이로 인하여 앞서 B의 퍼블릭 주소 획득을 위해 Server S와 열어놓은 커넥션
이로 인하여 앞서 B의 퍼블릭 주소 획득을 위해 Server S와의 맵핑 정보(좌측 이미지 참고)

`orgin-src:10.0.0.1:4321 / NAT changed-src:155.99.25.11:62000 / dst:18.181.0.31:1234` 의 맵핑 정보를
`orgin-src:10.0.0.1:4321 / NAT changed-src:155.99.25.11:62000 / dst:18.181.0.31:1234`

`orgin-src:10.0.0.1:4321 / NAT changed-src:155.99.25.11:62000 / dst:138.76.29.7:31000` 과 같이 `dst`를 B의 NAT으로 바꿔서 저장하게된다

이렇게되면 `B의 NAT(138.76.29.7:31000)` `138.76.29.7:31000` 로 요청을 보낼 수 있는 상태가 된다
이렇게되면 `B의 NAT(138.76.29.7:31000)` `138.76.29.7:31000` 로 요청을 보낼 수 있는 상태가 된다

이로 인하여 B의 NAT를 통해서 들어오는게 허용되는 **"구멍"**뚫린 것이다
이로 인하여 B의 NAT이 들어올 수 있는 `구멍`뚫림

## 참고 링크
https://bford.info/pub/net/p2pnat/
Expand Down

0 comments on commit 77bc02a

Please sign in to comment.