История изменений
Исправление router, (текущая версия) :
Дальше мне надо мой wlan0 засунуть в ns LEFT и вот тут смысл вот этого я не вкурил даже после man'а:
ip link add name ve0a type veth peer name ve0b
netspace создаётся изолированным. Представь его как отдельный комп. Чтобы он мог выйти в сеть, нужно соединить его линком с основным компом
Приведённая выше команда создаст этот линк. Появятся 2 сетевых интерфейса - ve0a и ve0b. Дальше один из них настраиваешь в основной системе, другой прокидываешь в namespace и настраиваешь там
ip address add 10.10.10.1/24 dev ve0a
ip link set dev ve0a up
ip link set dev ve0b netns LEFT
ip netns exec LEFT bash
# уже в netspace LEFT:
ip address add 10.10.10.2/24 dev ve0b
ip link set dev ve0b up
ip route add default via 10.10.10.1 dev ve0b
После этого всё равно придётся настраивать форвардинг и нат/маскарад, т.к. для ядра этот трафик будет «чужим»
iptables -P FORWARD DROP
iptables -I FORWARD 1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 ! -d 10.10.10.0/24 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward
Исходная версия router, :
Дальше мне надо мой wlan0 засунуть в ns LEFT и вот тут смысл вот этого я не вкурил даже после man'а:
ip link add name ve0a type veth peer name ve0b
netspace создаётся изолированным. Представь его как отдельный комп. Чтобы он мог выйти в сеть, нужно соединить его линком с основным компом
Приведённая выше команда создаст этот линк. Появятся 2 сетевых интерфейса - ve0a и ve0b. Дальше один из них настраиваешь в основной системе, другой прокидываешь в namespace и настраиваешь там
ip address add 10.10.10.1/24 dev ve0a
ip link set dev ve0a up
ip link set dev ve0b netns LEFT
ip netns exec LEFT bash
# уже в netspace LEFT:
ip address add 10.10.10.2/24 dev ve0b
ip link set dev ve0b up
ip route add default via 10.10.10.1 dev ve0a
После этого всё равно придётся настраивать форвардинг и нат/маскарад, т.к. для ядра этот трафик будет «чужим»
iptables -P FORWARD DROP
iptables -I FORWARD 1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -s 10.10.10.0/24 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.10.10.0/24 ! -d 10.10.10.0/24 -j MASQUERADE
echo 1 > /proc/sys/net/ipv4/ip_forward