В последние недели я просматривал форумы и видеоролики YT о том, как делать то, о чем говорится в заголовке, без существования.
У меня есть компьютер, который имеет только порт Ethernet и настроен через браузер по IP-адресу.
Поэтому мне нужна малина, чтобы получить доступ в Интернет с USB-ключа 4G и дать доступ в Интернет к компьютеру по кабелю Ethernet.
Это вывод mi ifconfig:
pi@raspb:~ $ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
инет 10.10.10.1 сетевая маска 255.255.255.0 широковещательная рассылка 10.10.10.255
эфир dc:a6:32:f8:b6:c4 txqueuelen 1000 (Ethernet)
RX-пакеты 225 байт 13500 (13,1 КиБ)
Ошибки RX 0 отброшено 0 переполнение 0 кадр 0
Пакеты TX 14 байт 1148 (1,1 КиБ)
Ошибки передачи 0 отброшено 0 превышение пропускной способности 0 несущей 0 коллизий 0
eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
инет 192.168.0.100 сетевая маска 255.255.255.0 широковещательная рассылка 192.168.0.255
inet6 fe80::e5db:be0d:34e8:be6c prefixlen 64 scopeid 0x20<ссылка>
эфир 00:a0:c6:00:00:00 txqueuelen 1000 (Ethernet)
RX-пакеты 3803 байта 132422 (129,3 КиБ)
Ошибки RX 3723 отброшено 0 превышений 0 кадров 3723
Пакеты TX 310 байт 50065 (48,8 КиБ)
Ошибки передачи 0 отброшено 0 превышение пропускной способности 0 несущей 0 коллизий 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
инет 127.0.0.1 сетевая маска 255.0.0.0
loop txqueuelen 1000 (локальная петля)
Пакеты RX 0 байт 0 (0,0 Б)
Ошибки RX 0 отброшено 0 переполнение 0 кадр 0
Пакеты TX 0 байт 0 (0,0 Б)
Ошибки передачи 0 отброшено 0 превышение пропускной способности 0 несущей 0 коллизий 0
Этот конфиг
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -m conntrack --ctstate СВЯЗАННО, УСТАНОВЛЕНО -j ПРИНЯТЬ
sudo iptables -A FORWARD -i eth1 -o eth0 -j ПРИНЯТЬ
И это выводит:
$ маршрут
Таблица IP-маршрутизации ядра
Шлюз назначения Флаги Генмаски Метрика Ссылка Использование Iface
по умолчанию _шлюз 0.0.0.0 UG 100 0 0 eth1
10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth1
$ sudo iptables -L -n -v
Цепочка INPUT (политика ACCEPT 1493 пакетов, 174К байт)
pkts bytes target prot opt in out source target
Цепочка FORWARD (политика ACCEPT 0 пакетов, 0 байт)
pkts bytes target prot opt in out source target
0 0 ПРИНЯТЬ все -- eth1 eth0 0.0.0.0/0 0.0.0.0/0 состояние СВЯЗАННО,УСТАНОВЛЕНО
0 0 ПРИНЯТЬ все -- eth0 eth1 0.0.0.0/0 0.0.0.0/0
Цепочка OUTPUT (политика ACCEPT 1001 пакетов, 97740 байт)
pkts bytes target prot opt in out source target
А sudo sysctl net.ipv4.ip_forward возвращает 1