D-Link DIR-320 и прошивка DD-WRT

Тема в разделе "Железный поток", создана пользователем D1m0n, 16 янв 2011.

  1. D1m0n
    Оффлайн

    D1m0n Active Member

    Пол:
    Мужской
    Credit:
    $730,00
    Book Reviews:
    0
    Собственно есть D-Link DIR-320 и прошивка DD-WRT.

    Главный вопрос как сделать Dual Access (Чтобы поднималось и PPPoE соединение и по DHCP получался айпишник для локалки).
    Есть у кого опыт и желание помочь?
    Форум DD-WRT перерыл, кусками что-то получается, но сам чувствую долго буду разбираться.
  2. Sterh
    Оффлайн

    Sterh Active Member

    Credit:
    $787,96
    Book Reviews:
    0
  3. D1m0n
    Оффлайн

    D1m0n Active Member

    Пол:
    Мужской
    Credit:
    $730,00
    Book Reviews:
    0
    Sterh,
    а можешь подсказать, 172.16.2.0 и 172.16.5.0 там у вас что?
  4. Sterh
    Оффлайн

    Sterh Active Member

    Credit:
    $787,96
    Book Reviews:
    0
    D1m0n, не подскажу. Поменял 320 месяца 3 назад.
  5. Tr1aL
    Оффлайн

    Tr1aL Active Member

    Credit:
    $0,00
    Book Reviews:
    0
    там насколько помню 2 варианта
    1 взять dd-wrt более ранней версии, из бета, там dual access есть
    2 скриптами прописать. скрипты были на форуме dd-wrt
  6. Neo1288
    Оффлайн

    Neo1288 Well-Known Member

    Credit:
    $764,78
    Book Reviews:
    0
    Еще вариант - не извращатся на 320-м с DD-WRT и поставить прошивку "от Олега".
  7. Tr1aL
    Оффлайн

    Tr1aL Active Member

    Credit:
    $0,00
    Book Reviews:
    0
    это на любителя
    кто с чем любит трахаться ))
    от олега тоже много косяков имеет :)
  8. D1m0n
    Оффлайн

    D1m0n Active Member

    Пол:
    Мужской
    Credit:
    $730,00
    Book Reviews:
    0
    Tr1aL, в каком диапазоне бет искать не подскажешь?
    вроде скриптами настроил, но чую что не до конца...
  9. Александр Рыжов
    Оффлайн

    Александр Рыжов Новичок

    Credit:
    $803,08
    Book Reviews:
    0
    Какие именно? Можно попробовать допилить.
  10. BORNDEAD
    Оффлайн

    BORNDEAD Новичок

    Credit:
    $715,00
    Book Reviews:
    0
    у меня дд врт + дир320 + дуал ацесс
    скрипты все на флешке лежат. кроме скрипта на боковую кнопку
  11. D1m0n
    Оффлайн

    D1m0n Active Member

    Пол:
    Мужской
    Credit:
    $730,00
    Book Reviews:
    0
    BORNDEAD, можешь куда нибудь выложить их, или прислать на web@dimapolyakov.ru?
    Буду благодарен.
  12. BORNDEAD
    Оффлайн

    BORNDEAD Новичок

    Credit:
    $715,00
    Book Reviews:
    0
    итак. флешка примонтирована в /opt/
    в стартапе
    Код:
    /bin/sh /opt/init.domolink
    (while sleep 3
    do 
      if [ $(($(printf "%d" "'`dd if=/dev/gpio/in count=1 2>/dev/null`")&64)) -eq 0 ] 
      then 
        /bin/sh /opt/init.domolink
      fi 
    done;)&
    скрипт, выполняемый при монтировании флешки
    Код:
    /opt/init.usb
    init.usb
    Код:
    #!/bin/sh
    mount --bind /opt/jffs /jffs
    unset PATH
    export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin:/jffs/sbin:/jffs/bin:/jffs/usr/sbin:/jffs/usr/bin
    unset LD_LIBRARY_PATH
    
    PATH=/opt/bin:/opt/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/jffs/sbin:/jffs/bin:/jffs/usr/sbin:/jffs
    export LD_LIBRARY_PATH=/opt/lib:/opt/usr/lib:/lib:/usr/lib:/jffs/lib:/jffs/usr/lib:/jffs/usr/local/lib
    
    unset LD_LIBRARY_PATH
    export LD_LIBRARY_PATH
    
    /opt/bin/busybox swapon /dev/scsi/host0/bus0/target0/lun0/part2
    mount -o bind /opt/etc/profile /etc/profile
    init.domolink
    Код:
    #!/bin/sh
    killall pppd
    killall udhcpc
    cp -R /jffs/ppp /tmp
    
    LAN=br0
    LAN_IP=`ifconfig ${LAN} | grep inet | awk '{print $2}' | sed -e 's/addr://g'`
    
    /usr/sbin/iptables -F
    /usr/sbin/iptables -t nat -F
    /usr/sbin/iptables -t mangle -F
    /usr/sbin/iptables -X
    /usr/sbin/iptables -t nat -X
    /usr/sbin/iptables -t mangle -X
    
    /usr/sbin/iptables -P INPUT DROP
    /usr/sbin/iptables -P OUTPUT ACCEPT
    /usr/sbin/iptables -P FORWARD DROP
    
    /usr/sbin/iptables -t nat -P PREROUTING ACCEPT
    /usr/sbin/iptables -t nat -P POSTROUTING ACCEPT
    /usr/sbin/iptables -t nat -P OUTPUT ACCEPT
    
    /usr/sbin/iptables -A INPUT -i lo -j ACCEPT
    /usr/sbin/iptables -A INPUT -i $LAN -j ACCEPT
    
    /usr/sbin/iptables -A INPUT -s 224.0.0.0/240.0.0.0 -j ACCEPT
    /usr/sbin/iptables -A INPUT -d 224.0.0.0/240.0.0.0 -j ACCEPT
    
    /usr/sbin/udhcpc -i vlan1 -s /opt/etc/domolink.dhcp -p /var/run/udhcpc.pid
    /usr/sbin/pppd file /opt/etc/domolink.pppoe
    
    killall -KILL udpxy
    killall -KILL igmprt
    killall -KILL upnp
    killall -KILL miniupnpd
    
    /opt/bin/udpxy -a br0 -p 81 -m vlan1
    /opt/sbin/miniupnpd -f /opt/etc/miniupnpd/miniupnpd.conf
    
  13. BORNDEAD
    Оффлайн

    BORNDEAD Новичок

    Credit:
    $715,00
    Book Reviews:
    0
    /opt/etc/domolink.dhcp
    Код:
    #!/bin/sh
    [ -z "$1" ] && echo "Error: should be called from udhcpc" && exit 1
    ifconfig $interface mtu 1500 up
    RESOLV_CONF="/tmp/resolv.dnsmasq"
    [ -n "$broadcast" ] && BROADCAST="broadcast $broadcast"
    [ -n "$subnet" ] && NETMASK="netmask $subnet"
    case "$1" in
    deconfig)
    # /sbin/ifconfig $interface 0.0.0.0
    ;;
    
    renew|bound)
    /sbin/ifconfig $interface $ip $BROADCAST $NETMASK up
    echo "$ip $BROADCAST $NETMASK"
    
    if [ -n "$router" ] ; then
    echo "deleting routers"
    # while route del default gw 0.0.0.0 dev $interface ; do
    # :
    # done
    
    # for i in $router ; do
    # route add default gw $i dev $interface
    # done
    echo "$router"
    fi
    
    LAN=br0
    LAN_IP=`ifconfig ${LAN} | grep inet | awk '{print $2}' | sed -e 's/addr://g'`
    
    /usr/sbin/iptables -D INPUT -i $interface -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    /usr/sbin/iptables -D FORWARD -o $interface -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1500 -j TCPMSS --clamp-mss-to-pmtu
    /usr/sbin/iptables -D FORWARD -i $interface -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    /usr/sbin/iptables -D FORWARD -i $LAN -o $interface -m state --state NEW -j ACCEPT
    /usr/sbin/iptables -D FORWARD -i $LAN -o $interface -j ACCEPT
    
    #iptables -t nat -A POSTROUTING -o ${ELAN} -s 172.16.0.0/24 -j MASQUERADE
    /usr/sbin/iptables -t nat -D POSTROUTING -o $interface -s 172.16.0.0/24 -j SNAT --to-source $ip
    
    
    /usr/sbin/iptables -A INPUT -i $interface -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    /usr/sbin/iptables -A FORWARD -o $interface -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1500 -j TCPMSS --clamp-mss-to-pmtu
    /usr/sbin/iptables -A FORWARD -i $interface -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    /usr/sbin/iptables -A FORWARD -i $LAN -o $interface -m state --state NEW -j ACCEPT
    /usr/sbin/iptables -A FORWARD -i $LAN -o $interface -j ACCEPT
    
    #iptables -t nat -A POSTROUTING -o ${ELAN} -s 172.16.0.0/24 -j MASQUERADE
    /usr/sbin/iptables -t nat -A POSTROUTING -o $interface -s 172.16.0.0/24 -j SNAT --to-source $ip
    
    ;;
    
    esac
    
    exit 0
    172.16.0.0/24 естественно моя локалка домашняя

    /opt/etc/domolink.pppoe
    Код:
    plugin /usr/lib/rp-pppoe.so
    nic-vlan1
    noccp
    mppc
    noipdefault
    noauth
    nodefaultroute
    noaccomp
    nobsdcomp
    nodeflate
    nopcomp
    nomppe
    user 'логин'
    password 'пасс'
    default-asyncmap
    mtu 1492
    mru 1492
    unit 0
    persist
    maxfail 0
    holdoff 1
    lcp-echo-interval 2
    lcp-echo-failure 1
    lcp-restart 1
    ktune
    usepeerdns
    logfile /opt/tmp/pppd.log
    
    в папке /opt/jffs/
    /opt/jffs/ppp/ip-down
    /opt/jffs/ppp/ip-up

    /opt/jffs/ppp/ip-up
    Код:
    #!/opt/bin/bash
    
    LAN=br0
    LAN_IP=`ifconfig ${LAN} | grep inet | awk '{print $2}' | sed -e 's/addr://g'`
    
    WAN=ppp0
    WAN_GATE=${IPREMOTE}
    WAN_IP=${IPLOCAL}
    
    ELAN=vlan1
    ELAN_IP=`ifconfig ${ELAN} | grep inet | awk '{print $2}' | sed -e 's/addr://g'`
    
    /usr/sbin/iptables -A INPUT -i $WAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    /usr/sbin/iptables -A FORWARD -o $WAN -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1500 -j TCPMSS --clamp-mss-to-pmtu
    /usr/sbin/iptables -A FORWARD -i $WAN -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    /usr/sbin/iptables -A FORWARD -i $LAN -o $WAN -m state --state NEW -j ACCEPT
    /usr/sbin/iptables -A FORWARD -i $LAN -o $WAN -j ACCEPT
    
    #iptables -t nat -A POSTROUTING -o ${WAN} -s 172.16.0.0/24 -j MASQUERADE
    #iptables -t nat -A POSTROUTING -o ${ELAN} -s 172.16.0.0/24 -j MASQUERADE
    /usr/sbin/iptables -t nat -A POSTROUTING -o $WAN -s 172.16.0.0/24 -j SNAT --to-source $WAN_IP
    
    #adding the MINIUPNPD chain for nat
    /usr/sbin/iptables -t nat -N MINIUPNPD
    #adding the rule to MINIUPNPD
    #$IPTABLES -t nat -A PREROUTING -d $EXTIP -i $EXTIF -j MINIUPNPD
    /usr/sbin/iptables -t nat -A PREROUTING -i $WAN -j MINIUPNPD
    
    #adding the MINIUPNPD chain for filter
    /usr/sbin/iptables -t filter -N MINIUPNPD
    #adding the rule to MINIUPNPD
    /usr/sbin/iptables -t filter -A FORWARD -i $WAN -o $LAN -j MINIUPNPD
    
    /sbin/route del default
    /sbin/route add default gw ${WAN_GATE}
    
    echo "nameserver        ${DNS1}">/tmp/resolv.dnsmasq
    echo "nameserver        ${DNS2}">>/tmp/resolv.dnsmasq
    echo "nameserver        8.8.8.8">>/tmp/resolv.dnsmasq
    
    /opt/jffs/ppp/ip-down
    Код:
    #!/opt/bin/bash
    
    LAN=br0
    LAN_IP=`ifconfig ${LAN} | grep inet | awk '{print $2}' | sed -e 's/addr://g'`
    
    WAN=ppp0
    WAN_GATE=${IPREMOTE}
    WAN_IP=${IPLOCAL}
    
    /usr/sbin/iptables -D INPUT -i $WAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    
    /usr/sbin/iptables -D FORWARD -o $WAN -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1500 -j TCPMSS --clamp-mss-to-pmtu
    /usr/sbin/iptables -D FORWARD -i $WAN -o $LAN -m state --state ESTABLISHED,RELATED -j ACCEPT
    /usr/sbin/iptables -D FORWARD -i $LAN -o $WAN -m state --state NEW -j ACCEPT
    /usr/sbin/iptables -D FORWARD -i $LAN -o $WAN -j ACCEPT
    
    #iptables -t nat -A POSTROUTING -o ${WAN} -s 172.16.0.0/24 -j MASQUERADE
    #iptables -t nat -A POSTROUTING -o ${ELAN} -s 172.16.0.0/24 -j MASQUERADE
    /usr/sbin/iptables -t nat -D POSTROUTING -o $WAN -s 172.16.0.0/24 -j SNAT --to-source $WAN_IP
    
    #adding the MINIUPNPD chain for nat
    /usr/sbin/iptables -t nat -X MINIUPNPD
    #adding the rule to MINIUPNPD
    #$IPTABLES -t nat -A PREROUTING -d $EXTIP -i $EXTIF -j MINIUPNPD
    /usr/sbin/iptables -t nat -D PREROUTING -i $WAN -j MINIUPNPD
    
    #adding the MINIUPNPD chain for filter
    /usr/sbin/iptables -t filter -X MINIUPNPD
    #adding the rule to MINIUPNPD
    /usr/sbin/iptables -t filter -D FORWARD -i $WAN -o $LAN -j MINIUPNPD
    
    /sbin/route del default
    единствееный замеченный минус, после бута сначала выполняеца монтирование, потом запуск служб ппп, файрвола и т.д. никак руки не дойдут долелать до автомата. а так после загрузки боковую зажал на 3 сек, он сам все сделал
  14. D1m0n
    Оффлайн

    D1m0n Active Member

    Пол:
    Мужской
    Credit:
    $730,00
    Book Reviews:
    0
    BORNDEAD, спасибо.


    Пару уточняющих вопросов:
    1. Версия прошивки?
    2. В GUI WAN Connection Type что должно быть выбрано?
    3. Чего на флешке должно быть?
    Ну файлы которые выше, понятно. Судя по концовке init.domolink должны быть еще файлы?
  15. BORNDEAD
    Оффлайн

    BORNDEAD Новичок

    Credit:
    $715,00
    Book Reviews:
    0
    версия прошивки последняя от eko NEWD_mini_usb
    Downloads › others › eko › V24_TNG

    в ван у меня стоит dhcp хотя, по сути не важно, скрипт убивает и пппд и дхцп клиент
    на флешке лежит optware
    оттуда установлен басибокс, так как в стандартном нету поддерки свапа.
    стоит также miniupnpd. родной имхо кривоват
    bash
    udpxy (не из оптваре, искать по udpxy Chipmunk )

    вот ещё вспомнилось хотел поднять контроллер домена на роутере... када ж руки дойдут?
  16. Александр Рыжов
    Оффлайн

    Александр Рыжов Новичок

    Credit:
    $803,08
    Book Reviews:
    0
    А зачем нужны такие замысловатые танцы с переменными окружения? Когда можно...
    Код:
    #!/bin/sh
    mount --bind /opt/jffs /jffs
    
    export PATH=/opt/bin:/opt/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/jffs/sbin:/jffs/bin:/jffs/usr/sbin:/jffs
    export LD_LIBRARY_PATH=/opt/lib:/opt/usr/lib:/lib:/usr/lib:/jffs/lib:/jffs/usr/lib:/jffs/usr/local/lib
    
    /opt/bin/busybox swapon /dev/scsi/host0/bus0/target0/lun0/part2
    mount -o bind /opt/etc/profile /etc/profile
  17. BORNDEAD
    Оффлайн

    BORNDEAD Новичок

    Credit:
    $715,00
    Book Reviews:
    0
    :crazy: не знаю

Поделиться этой страницей