Sobes.tech
Назад к вопросам
Senior
4

Расскажи про IPv4 и IPv6

Компании, где спрашивали
Итрея

Ответ от нейросети

sobes.tech AI

IPv4 — это протокол интернет-протокола версии 4, использующий 32-битные адреса, что даёт около 4,3 миллиарда уникальных адресов. Адреса записываются в виде четырёх десятичных чисел от 0 до 255, разделённых точками, например, 192.168.0.1.

IPv6 — это следующая версия протокола с 128-битными адресами, что обеспечивает практически неограниченное количество уникальных адресов. Адреса записываются в виде восьми групп по четыре шестнадцатеричных цифры, разделённых двоеточиями, например, 2001:0db8:85a3:0000:0000:8a2e:0370:7334.

Основные отличия:

  • Размер адреса: 32 бита против 128 бит.
  • Формат записи и представления.
  • IPv6 поддерживает автоматическую конфигурацию адресов (SLAAC), улучшенную маршрутизацию и встроенную поддержку безопасности (IPSec).

В Go для работы с IP-адресами используется пакет net, который поддерживает оба протокола:

package main

import (
	"fmt"
	"net"
)

func main() {
	ip := net.ParseIP("192.168.1.1")
	fmt.Println("IPv4:", ip)

	ip6 := net.ParseIP("2001:db8::68")
	fmt.Println("IPv6:", ip6)
}