LINUX.ORG.RU

История изменений

Исправление vodz, (текущая версия) :

По простому тут уже дали, но так не спортивно. Вот, чтобы препод зауважал:

#!/usr/bin/env bash

net=192.168.0.0
netmask=255.255.255.0
gw=10.4.0.1

hex2ipv4() {
        local i v
        for i; do
                v=${!i}
                printf -v $i "%d.%d.%d.%d" 0x${v:6} 0x${v:4:2} 0x${v:2:2} 0x${v:0:2}
        done
}

{
read Others
while read Iface Destination Gateway Flags RefCnt Use Metric Mask Others; do
        hex2ipv4 Destination Mask Gateway
        [[ $Destination == $net && $Mask == $netmask && $Gateway == $gw ]] && exit 0
done
} < /proc/net/route

route add -net $net netmask $netmask gw $gw

Исходная версия vodz, :

По простому тут уже дали, но так не спортивно. Вот, чтобы препод зауважал:

#!/bin/sh

net=192.168.0.0
netmask=255.255.255.0
gw=10.4.0.1

hex2ipv4() {
        local i v
        for i; do
                v=${!i}
                printf -v $i "%d.%d.%d.%d" 0x${v:6} 0x${v:4:2} 0x${v:2:2} 0x${v:0:2}
        done
}

{
read Others
while read Iface Destination Gateway Flags RefCnt Use Metric Mask Others; do
        hex2ipv4 Destination Mask Gateway
        [[ $Destination == $net && $Mask == $netmask && $Gateway == $gw ]] && exit 0
done
} < /proc/net/route

route add -net $net netmask $netmask gw $gw