Resulta que iptables no maneja demasiado bien los ceros a la izquierda. Como el $machinenumber
que se utiliza debe tener un cero inicial para otros fines, la idea es simplemente crear una nueva variable ($nozero
) basada en $machinenumber
, donde se eliminan los ceros iniciales.Eliminación de ceros a la izquierda antes de pasar una variable de shell a otro comando
$machinenumber
es un número de dos dígitos entre 01 y 24. En la actualidad es 09
$machinetype
es 74 y por ahora no ha causado problemas antes.
Lo que tengo hasta ahora es:
nozero = (echo $machinenumber | sed 's/^0*//')
iptables -t nat -I POSTROUTING -s 10.($machinetype).($nozero).0/24 -j MASQUERADE
Aunque creo que estoy en el camino correcto, los resultados de código en:
ERROR - Unknown string operation
¿Eh? '($ machinenumber + 0)' no es sintaxis matemática en bash. –