Átjáró probléma

Kezdőlap Fórumok SOS! Bajban vagyok Átjáró probléma

10 bejegyzés megtekintése - 11-20 / 21
  • Szerző
    Bejegyzés
  • #2128939
    Hybrid
    Felhasználó

      MAC szures nem lenne okosabb megoldas ?? a „nagyok” is ugy csinaljak…ezt egy sima router is tudja, ugyhogy linux alatt is 100% hogy lehet, csak nemtudom hogyan, nem foglalkoztam meg ilyensmivel…

      #2128940
      Hybrid
      Felhasználó

        MAC szures nem lenne okosabb megoldas ?? a „nagyok” is ugy csinaljak…ezt egy sima router is tudja, ugyhogy linux alatt is 100% hogy lehet, csak nemtudom hogyan, nem foglalkoztam meg ilyensmivel…

        #2128941
        lada2105
        Felhasználó
          Hybrid wrote:
          MAC szures nem lenne okosabb megoldas ?? a „nagyok” is ugy csinaljak…ezt egy sima router is tudja, ugyhogy linux alatt is 100% hogy lehet, csak nemtudom hogyan, nem foglalkoztam meg ilyensmivel…

          man iptables 😉

          mac
            –mac-source [!] address
              Match  source  MAC  address.    It  must  be  of  the  form
              XX:XX:XX:XX:XX:XX.  Note that this only makes sense for  packets
              coming from an Ethernet device and entering the PREROUTING, FOR-
              WARD or INPUT chains.

          #2128942
          lada2105
          Felhasználó
            Hybrid wrote:
            MAC szures nem lenne okosabb megoldas ?? a „nagyok” is ugy csinaljak…ezt egy sima router is tudja, ugyhogy linux alatt is 100% hogy lehet, csak nemtudom hogyan, nem foglalkoztam meg ilyensmivel…

            man iptables 😉

            mac
              –mac-source [!] address
                Match  source  MAC  address.    It  must  be  of  the  form
                XX:XX:XX:XX:XX:XX.  Note that this only makes sense for  packets
                coming from an Ethernet device and entering the PREROUTING, FOR-
                WARD or INPUT chains.

            #2128943
            Hybrid
            Felhasználó

              mondom nem kellett nekem, majd ha kell akkor biztos az lesz 😛 , en csak az otletet adtam, tovabb o kell utananezzen…

              #2128944
              Hybrid
              Felhasználó

                mondom nem kellett nekem, majd ha kell akkor biztos az lesz 😛 , en csak az otletet adtam, tovabb o kell utananezzen…

                #2128945
                lada2105
                Felhasználó
                  Hybrid wrote:
                  mondom nem kellett nekem, majd ha kell akkor biztos az lesz 😛 , en csak az otletet adtam, tovabb o kell utananezzen…

                  Okés, nem is konkrétan neked szántam, hanem „csak úgy” válaszként, hogy simán megoldható avval is.

                  #2128946
                  lada2105
                  Felhasználó
                    Hybrid wrote:
                    mondom nem kellett nekem, majd ha kell akkor biztos az lesz 😛 , en csak az otletet adtam, tovabb o kell utananezzen…

                    Okés, nem is konkrétan neked szántam, hanem „csak úgy” válaszként, hogy simán megoldható avval is.

                    #2128947
                    lada2105
                    Felhasználó

                      Nah megnéztem, itt az igért korlátozó „script”, ami saját maga sávszélességét korlátozza mindenféle külsö segítség nélkül.
                      Ergó nem kell 2 gép, amint már említettem.

                      Code:
                      #!/bin/bash

                      DEV=eth0

                      start () {

                      ip link set dev $DEV qlen 30
                      #ip link set dev $DEV mtu 1000
                      echo -n „.”
                      tc qdisc add dev $DEV root handle 1: htb default 21

                      tc class add dev $DEV parent 1: classid 1:1 htb rate 6000kbps
                      echo -n „.”
                      tc class add dev $DEV parent 1:1 classid 1:20 htb rate 1500kbit ceil 4200kbit pr
                      io 0
                      tc class add dev $DEV parent 1:1 classid 1:30 htb rate 1200kbit ceil 1500kbit pr
                      io 1
                      tc class add dev $DEV parent 1:1 classid 1:40 htb rate 30kbit ceil 60kbit prio 2
                      echo -n „.”
                      tc qdisc add dev $DEV parent 1:20 handle 21: sfq perturb 10
                      tc qdisc add dev $DEV parent 1:30 handle 31: sfq perturb 10 limit 12
                      tc qdisc add dev $DEV parent 1:40 handle 41: sfq perturb 10 limit 4
                      echo -n „.”
                      tc filter add dev $DEV parent 1:0 prio 0 protocol ip handle 21 fw flowid 1:20
                      tc filter add dev $DEV parent 1:0 prio 1 protocol ip handle 31 fw flowid 1:30
                      tc filter add dev $DEV parent 1:0 prio 2 protocol ip handle 41 fw flowid 1:40
                      echo -n „.”
                      #iptables -t mangle -A OUTPUT -p tcp -d 10.0.0.0/8 -j MARK –set-mark 20
                      #iptables -t mangle -A INPUT -p tcp -s ! 10.0.0.0/8 -j MARK –set-mark 30
                      iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 –sport 22 -j M
                      ARK –set-mark 31
                      iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 –sport 22 -j MARK
                      –set-mark 31
                      iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 -j MARK –set-mark
                      41
                      #iptables -t mangle -A INPUT -p tcp -i eth0 -s ! 10.0.0.0/8 -j LOG –log-level i
                      nfo
                      iptables -t mangle -A INPUT -p tcp -i eth0 -s ! 10.1.10.0/16 -j MARK –set-mark
                      31
                      echo „”
                      }

                      stop() {
                          echo -n „.”
                          tc qdisc del dev $DEV root
                          echo -n „.”
                          iptables -t mangle -F
                      }

                          case „$1” in
                          start)
                        echo „Starting”
                        start
                        echo „done”
                        ;;
                          stop)
                        echo „Stopping”
                        stop
                        echo „done”
                        ;;
                          *)
                        echo „usage: start | stop”
                        ;;
                          esac

                      exit 0

                      okés, persze nem 100-as, nem 100%-osan olyan a gyakorlati érték, ami a beállított (sávszélesség maximális értékei), de nagyon közeli hozzá és számomra ez a lényeg.
                      A további infókat a beállításokról a google-ban kaphatsz a tc-re illetve a linux bandwith limit szavakra keresve.
                      Az IP címeket persze firkáld át és velük együtt modosíthatod a tüzfal rule-okat is.

                      Sok sikert!

                      ui: ne várj azonnali sikert! Nekem kb 1 hónapba telt, mire ez így összeállt tesztelésekkel, értékekkel és miegyébbel 🙂

                      #2128948
                      lada2105
                      Felhasználó

                        Nah megnéztem, itt az igért korlátozó „script”, ami saját maga sávszélességét korlátozza mindenféle külsö segítség nélkül.
                        Ergó nem kell 2 gép, amint már említettem.

                        Code:
                        #!/bin/bash

                        DEV=eth0

                        start () {

                        ip link set dev $DEV qlen 30
                        #ip link set dev $DEV mtu 1000
                        echo -n „.”
                        tc qdisc add dev $DEV root handle 1: htb default 21

                        tc class add dev $DEV parent 1: classid 1:1 htb rate 6000kbps
                        echo -n „.”
                        tc class add dev $DEV parent 1:1 classid 1:20 htb rate 1500kbit ceil 4200kbit pr
                        io 0
                        tc class add dev $DEV parent 1:1 classid 1:30 htb rate 1200kbit ceil 1500kbit pr
                        io 1
                        tc class add dev $DEV parent 1:1 classid 1:40 htb rate 30kbit ceil 60kbit prio 2
                        echo -n „.”
                        tc qdisc add dev $DEV parent 1:20 handle 21: sfq perturb 10
                        tc qdisc add dev $DEV parent 1:30 handle 31: sfq perturb 10 limit 12
                        tc qdisc add dev $DEV parent 1:40 handle 41: sfq perturb 10 limit 4
                        echo -n „.”
                        tc filter add dev $DEV parent 1:0 prio 0 protocol ip handle 21 fw flowid 1:20
                        tc filter add dev $DEV parent 1:0 prio 1 protocol ip handle 31 fw flowid 1:30
                        tc filter add dev $DEV parent 1:0 prio 2 protocol ip handle 41 fw flowid 1:40
                        echo -n „.”
                        #iptables -t mangle -A OUTPUT -p tcp -d 10.0.0.0/8 -j MARK –set-mark 20
                        #iptables -t mangle -A INPUT -p tcp -s ! 10.0.0.0/8 -j MARK –set-mark 30
                        iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 –sport 22 -j M
                        ARK –set-mark 31
                        iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 –sport 22 -j MARK
                        –set-mark 31
                        iptables -t mangle -A OUTPUT -p tcp -o eth0 -d ! 10.1.10.0/16 -j MARK –set-mark
                        41
                        #iptables -t mangle -A INPUT -p tcp -i eth0 -s ! 10.0.0.0/8 -j LOG –log-level i
                        nfo
                        iptables -t mangle -A INPUT -p tcp -i eth0 -s ! 10.1.10.0/16 -j MARK –set-mark
                        31
                        echo „”
                        }

                        stop() {
                            echo -n „.”
                            tc qdisc del dev $DEV root
                            echo -n „.”
                            iptables -t mangle -F
                        }

                            case „$1” in
                            start)
                          echo „Starting”
                          start
                          echo „done”
                          ;;
                            stop)
                          echo „Stopping”
                          stop
                          echo „done”
                          ;;
                            *)
                          echo „usage: start | stop”
                          ;;
                            esac

                        exit 0

                        okés, persze nem 100-as, nem 100%-osan olyan a gyakorlati érték, ami a beállított (sávszélesség maximális értékei), de nagyon közeli hozzá és számomra ez a lényeg.
                        A további infókat a beállításokról a google-ban kaphatsz a tc-re illetve a linux bandwith limit szavakra keresve.
                        Az IP címeket persze firkáld át és velük együtt modosíthatod a tüzfal rule-okat is.

                        Sok sikert!

                        ui: ne várj azonnali sikert! Nekem kb 1 hónapba telt, mire ez így összeállt tesztelésekkel, értékekkel és miegyébbel 🙂

                      10 bejegyzés megtekintése - 11-20 / 21
                      • Be kell jelentkezni a hozzászóláshoz.