Das Profi-Forum für LANCOM-User
LANCOMs günstig bei Ebay ersteigern
LANCOM

 Script-Fehler
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Beiträge der letzten 24 Stunden anzeigen

Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
Alex



Anmeldungsdatum: 09.01.2005
Beiträge: 11

BeitragVerfasst am: Fr 04 Nov, 2005 10:26 Antworten mit ZitatNach oben

Hallo zusammen,

ein über readscript erzeugtes Script kann nicht wieder auf den Router hochgeladen werden. Es geht hier um Firewall-Regeln eines Lancom 1611 Routers, Firmware 5.06.

Im Attachment ist die Konfigurationsdatei enthalten. Es muß am add-Befehl für die Firewall-Regel "INTERNET_QOS" liegen. In dieser Regel gibt es zwei Aktionen: Verwerfen zu sendender Pakete ab 128 kbit/s global und Verwerfen zu empfangener Paketen ab 2016 kbit/s global.

Der Befehl readscript erzeugt folgende Zeile für die über LANconfig erstellte Firewall-Regel "INTERNET_QOS":
add "INTERNET_QOS" "TCP" "LOCALNET" "%S21,80,443,591,8008,8080 ANYHOST" "INTERNET_QOS0" No 0 Yes No Yes 0 ""

Auffällig ist der Wert für Spalte Action: "INTERNET_QOS0". Das kann nicht stimmen. Das Einlesen des Befehls führt zu Fehlermeldung "Script Error" unter telnet, im LANconfig sieht man, daß in die Aktiontabelle nur Zurückweisen erzeugt wurde.

Entfernt man über LANconfig die Aktion für zu sendende Pakete in obiger Firewall-Regel, wird mit readscript ein korrekter Befehl erzeugt:
add "INTERNET_QOS" "TCP" "LOCALNET" "%S21,80,443,591,8008,8080 ANYHOST" "%Qctds8 @i %Lgrwds2016 @i %D %N" No 0 Yes No Yes 0 ""

Entfernt man die Aktion für zu empfangene Pakete, wird folgender Befehl erzeugt:
add "INTERNET_QOS" "TCP" "LOCALNET" "%S21,80,443,591,8008,8080 ANYHOST" "%Qctds8 @i %Lgtwds128 @i %D %N" No 0 Yes No Yes 0 ""

Dieser Befehl ist ebenfalls korrekt. Weiß jemand, wie man die letzten beiden Befehle zu einem zusammenführt? Wendet man sie nacheinander an, wird nur jeweils eine Aktion übernommen. Ich würde gerne die Regeln für 4 Router per Scripting erzeugen und nicht fehleranfällig per Hand.

Folgendes funktioniert nicht:
add "INTERNET_QOS" "TCP" "LOCALNET" "%S21,80,443,591,8008,8080 ANYHOST" "%Qctds8 @i %Lgtwds128 %Lgrwds2016 @i %D %N" No 0 Yes No Yes 0

Gruß,
Alex



1611.zip
 Beschreibung:

Download
 Dateiname:  1611.zip
 Dateigröße:  6.45 KB
 Heruntergeladen:  96 mal

Benutzer ist OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
Guest






Verfasst am: Nach oben

backslash
Moderator


Anmeldungsdatum: 08.11.2004
Beiträge: 4571
Wohnort: Aachen

BeitragVerfasst am: Fr 04 Nov, 2005 15:38 Antworten mit ZitatNach oben

Hi Alex,

das Problem ist, daß "%Qctds8 @i %Lgtwds128 %Lgrwds2016 @i %D %N" mit 42 Zeichen zu lang ist für die Aktionsspalte, die maximal 40 Zeichen aufnehmen kann. Deshalb lagert LANconfig die Aktion in die Aktionstabelle aus (unter dem Namen "INTERNET_QOS0"). Wenn der Eintrag selbst auch nicht in eine Zeile der Aktionstabelle passt, dann splittet LANconfig diesen in weitere kleinere Einträge auf, die rekursiv aufeinander verweisen.

Da die notwendige Zeile zum Setzen des Eintrags in der Aktionstabelle in deinem Script nicht vorhanden ist, hast du nun eine ungültige Regel und bekommst beim Zurückschreiben die entsprechende Fehlermeldung

Gruß
Backslash
Benutzer ist OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
Alex



Anmeldungsdatum: 09.01.2005
Beiträge: 11

BeitragVerfasst am: Fr 04 Nov, 2005 16:23 Antworten mit ZitatNach oben

Hallo backslash,

welche Befehlszeilen muß ich dann verwenden oder wie erhalte ich sie?

Mit readscript erhalte ich Folgendes:
Code:
# Head
lang English
flash No

cd /Setup/IP-Router/Firewall/Rules
del *
tab  Name                              Prot.       Source
             Destination                               Action
                 Linked  Prio   Firewall-  VPN-Rule   Stateful  Rtg-tag  Comment

add  "DNS_ALLOW"                       "UDP"       "%A192.168.1.10"
             "ANYHOST %S53"                            "%Lcds0 @i %A"
                 No      0      Yes        No         Yes       0        ""
add  "INTERNET_QOS"                    "TCP"       "LOCALNET"
             "%S21,80,443,591,8008,8080 ANYHOST"       "INTERNET_QOS0"
                 No      0      Yes        No         Yes       0        ""
add  "POP_ALLOW"                       "TCP"       "%A192.168.1.10"
             "ANYHOST %S110"                           "%Lcds0 @i %A"
                 Yes     0      Yes        No         Yes       0        ""
add  "POP_QOS"                         "TCP"       "%A192.168.1.10"
             "ANYHOST %S110"                           "%Lgrwds2016 @i %D %N %Qg
tds16 @i"        No      0      Yes        No         Yes       0        ""
add  "SMTP_ALLOW"                      "TCP"       "%A192.168.1.10"
             "ANYHOST %S25"                            "%Lcds0 @i %A"
                 Yes     0      Yes        No         Yes       0        ""
add  "SMTP_QOS"                        "TCP"       "%A192.168.1.10"
             "ANYHOST %S25"                            "%Qgrds16 @i %Qgtds16 @i"
                 No      0      Yes        No         Yes       0        ""
add  "ALOW_PING"                       "ICMP"      "LOCALNET"
             "ANYHOST %S0"                             "%Lcds0 @i %A"
                 No      0      Yes        No         Yes       0        ""
add  "DENY_ALL"                        "ANY"       "LOCALNET"
             "ANYHOST"                                 "%Lcds0 @i %R %N"
                 No      0      Yes        No         Yes       0        ""
add  "INTERNET_ALLOW"                  "TCP"       "LOCALNET"
             "%S21,80,443,591,8008,8080 ANYHOST"       "%Lcds0 @i %A"
                 Yes     0      Yes        No         Yes       0        ""
cd /
flash Yes

# done
exit
Benutzer ist OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
COMCARGRU



Anmeldungsdatum: 10.11.2004
Beiträge: 976
Wohnort: Hessen

BeitragVerfasst am: Fr 04 Nov, 2005 21:09 Antworten mit ZitatNach oben

Zitat:
das Problem ist, daß "%Qctds8 @i %Lgtwds128 %Lgrwds2016 @i %D %N" mit 42 Zeichen zu lang ist für die Aktionsspalte, die maximal 40 Zeichen aufnehmen kann.


Jo und genau deswegen ist das ansich tolle Scripting etwas kastriert. Wäre das nicht der Fall, könnte man in Windeseile mal eben 200 MAC Adressen in eine FW Regel schreiben - so geht das leider nicht, weil man das ansich simple Script entsprechend bearbeiten muß...

*mitdemZaunpfahlwink* das sich da endlich mal was tut beim Regel Management... *BitteBitteBitteBitteBitte*


Gruß
COMCARGRU

_________________
Wann zum Teufel werden ALLE PCs grundsätzlich nur noch mit Hardware RAID 1 ausgestattet???
Benutzer ist OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen

 Gehe zu:   

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Beiträge der letzten 24 Stunden anzeigen