HSTS
브라우저가 보안성이 높은 포트443(https)로 고정시켜주게 만들어주는 기능
만약 포트80(http)로 접근해도 https로 자동으로 변경된다
📒 chrome, Edge가 이 기능을 지원한다.
📒 HSTS도 근본적인 문제를 해결못한다 -> QUIC(HTTP3)
IP
IP헤더

- VER : 버전 4(IPV4)
- HLEN : 헤더 길이
- Total Length : 헤더포함 패킷 전체길이
- service type : Session 계층에서 수행하는 QOS같은 기능을 제공하기 위해
📒 QOS : 가중치 우선순위 큐처럼 먼저 수행해야하는 작업을 실행시키는 등의 서비스
- Identification : 패킷을 구분함 (여러 다운로드를 해도 겹치지않는 이유)
- flags : DF(더이상 분할이 안됨), MF가 1이면 마지막 조각이 아니다.MF가 0이면 마지막 조각
- Fragment offset : 패킷을 쪼개서 보내기때문에 마지막에 다시 조합하려할때 순서가 어긋나게 도착하면 처음과 다르게 조합된다. 이것을 방지하기 위해 각 조각의 상대적인 위치정보를 나타낸다.
📒 Fragment의 사이즈는 MTU의 영향을 받는다
📒 MTU는 이더넷 기준 최대 1500Bytes이다
- TTL : 패킷의 생존시간, 패킷이 통과하는 최대 라우터 수를 제어하기 위해 사용 ,라우터를 지날때마다 1씩 감소,
0이되면 강제종료
📒 os가 TTL을 정의하고 있음
📒 같은 TTL값을 가진다면 OS가 같을 확률이 높다
(TTL fingerprinting)
- protocol : 패킷을 어떤 프로토콜에 붙여서 보내는지 명시
- checksum : 헤더의 오류 검출
IPV4

32비트로 이루어져있으며, 0.0.0.0~255.255.255.255까지 표현가능하다. 각 수는 8비트로 이루어져있다.
즉 255는 11111111이고 0은 00000000이다.

- 네트워크주소 : 네트워크를 식별하기 위한 주소, 호스트주소가 0이면 네트워크ID를 가리킨다.
- 호스트 주소 : 네트워크 주소로 표현되는 네트워크 내에서 할당할수 있는 각 호스트의 주소
EX) 168.10.9.0은 네트워크주소, 이때 168.10.9.1~168.10.9.254까지 해당 네트워크내에서 호스트가 가질 수 있는 주소들이다.
📒 호스트주소가 모두 0은 네트워크 ID, 모두 1은 Broadcast용이다.

- A클래스는 0~127까지이고 호스트주소는 24비트로 결정
- B클래스는 128~191까지이고 호스트주소는 16비트로 결정
- C클래스는 192~223까지이고 호스트주소는 8비트로 결정
- D클래스는 224~239까지이고 멀티캐스트 용도
- E클래스는 240~255까지이고 미래를 위해 남겨놓은 주소
📒 현재는 Classless를 사용하기때문에 클래스타입은 입력하지 않는다.

서브넷 마스크
- 네트워크주소와 호스트주소를 구분하는 정보
ex) 192.168.0.4의 서브넷마스크 : 255.255.255.0
- 네트워크 주소와 Broadcast주소를 확인할 수 있다.
- subneting 유무를 파악
- A클래스 서브넷마스크 : 255.0.0.0
- B클래스 서브넷마스크 : 255.255.0.0
- C클래스 서브넷마스크 : 255.255.255.0
서브넷팅
- ip를 효율적으로 낭비 없이 분해
- 네트워크를 목적에 따라서 나누어서 관리가능하게 함
- 호스트id의 일부를 네트워크로 사용한다는 것
- broadcast domain을 작게 나누어주는 것
ex) 198.16.10.8의 서브넷 마스크가 255.255.255.192라면 서브넷은 198.16.10.00~,198.16.10.01~,198.16.10.10~,198.16.10.11~ 총 4개가 나온다.
- 198.16.10.00~의 서브넷은 호스트의 주소 범위가 198.16.10.00000000~198.16.10.00111111까지인것이다.(198.16.10.0~198.16.10.63)
- 198.16.10.01~의 서브넷은 호스트의 주소 범위가 198.16.10.01000000~198.16.10.01111111까인것이다.(198.16.10.64~198.16.10.127)
- 198.16.10.10~의 서브넷은 호스트의 주소 범위가 198.16.10.10000000~198.16.10.10111111까지인것이다.(198.16.10.128~198.16.10.191)
- 198.16.10.11~의 서브넷은 호스트의 주소 범위가 198.16.10.11000000~198.16.10.11111111까지인것이다.(198.16.10.192~198.16.10.255)
📒__각 서브넷에서도 호스트의 주소가 모두 0인것 or 모두 1인것은 제외해야하기 때문에 호스트 주소의 개수는 각 서브넷마다 -2이다.
prefix(CIDR 표기법)
/24는 네트워크ID로 24비트를 사용하겠다는 것이고 호스트ID는 32-24인 8비트를 사용하겠다는 의미이다.
따라서 /26은 호스트ID의 비트를 6개사용하겠다는 것이고 서브넷팅이 되었다는 것을 알 수 있다.
EX) 192.168.10.2/26은 서브넷마스크가 255.255.255.192이고
총 4개의 서브넷이 만들어짐을 알 수 있다.
EX) 129.150.23.9/28은 서브넷마스크가 255.255.255.240이고 총 16개의 서브넷이 만들어짐을 알 수 있다.
📒 255.255.255.0의 형식으로도 서브넷마스크를 표현할 수 있지만 매번 쓰기에는 힘들기때문에 Prefix로 서브넷마스크를 표현한다.