Задать вопрос
Ответы пользователя по тегу Ubuntu
  • Не работает интернет соединение на сетевом мосте (да и впринципе NAT тоже) VirtualBox .Причина?

    @Mas_Hakim
    Просто маршрутной таблицы недостаточно.

    Нужно включать IP Forwarding и NAT (MASQUERADE), иначе пакеты не будут проходить между сетями (две ethernet карты).
    По умолчанию в Ubuntu IP Forwarding =0;

    Проверить:

    cat /proc/sys/net/ipv4/ip_forward


    Включить:

    echo 1 > /proc/sys/net/ipv4/ip_forward
    sysctl -w net.ipv4.ip_forward=1


    Только что читал про Beowulf Cluster Setup - модная тема :)
    Там предполагается что
    ADSL router with four ethernet ports,
    то есть в оригинальной конфиге предполагается, что трафик в инет есть на разъемах ethernet
    А в вашей конфиге указание в нетплане default :
    routes:
    - to: default
    via: 192.168.0.1


    В netplan по умолчанию для кластера такая конфига имеется ввиду:
    192.168.0.1 это роутер ADSL
    192.168.0.8 это master node и с 192.168.0.9 идут slave nodes
    Если такое написать в вашей конфиге, то теоретически должно положить интернет вообще с момента рестарта netplan, но он будет работать, пока кеш днс валиден. Для гугла 10 мин, для каких то сайтов до 30 дн. Если у них не выходят обновления по днс записям.

    Почему просто маршрутной таблицы недостаточно. ?
    IP Forwarding позволяет ядру Linux пересылать пакеты между интерфейсами. Без него пакеты не передаются.
    NAT (MASQUERADE) нужен, если устройства из одной сети (enp0s8) должны выходить в интернет через другой интерфейс (enp0s3).

    Настроить NAT через iptables или nft :


    План А :
    Читать netfilter.org:
    https://www.netfilter.org/documentation/HOWTO/NAT-...


    План Бэ :
    Довериться советам из интернета и выполнить команды:

    iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE
    iptables -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
    iptables -A FORWARD -i enp0s3 -o enp0s8 -m state --state RELATED,ESTABLISHED -j ACCEPT

    работает до перезагрузки надо сохранить если поможет. Но сначала определитесь со шлюзами какой куда ведет. Default route это для шлюза с доступом в интернет.
    Мост в ваших скринах не видно. Он вообще есть? Проверьте. Я бы убрал и сделал все на iptables.

    Вопрос - промт к chat GPT
    NAT между ethernet картами как пробросить интернет в локалку
    # netplan /etc/netplan/50-cloud-init.yaml
    -----------
    network:
    version: 2
    ethernets:
    enp0s3:
    dhcp4: true
    enp0s8:
    dhcp4: no
    addresses:
    - 192.168.0.108/24
    routes:
    - to: default
    via: 192.168.0.1
    nameservers:
    addresses:
    - 8.8.8.8
    - 8.8.4.4

    -------------------------------
    всё :)
    Ответ написан
    Комментировать