Пакеты IP имеют неправильный исходный адрес

Текст между обратными галочками выполняется и заменяется выводом команды (минус запаздывающие символы новой строки, и остерегайтесь той оболочки, поведения варьируются, когда существуют символы NUL в выводе). Это называют заменой команды, потому что ею заменяют с выводом команды. Таким образом, если Вы хотите распечатать 5, Вы не можете использовать обратные галочки, можно использовать кавычки, как echo "$b" или просто отбросьте любую цитату и использование echo $b.

Как Вы видите с тех пор $b содержит 5, при использовании обратных галочек bash пробует к команде выполнения 5 и с тех пор нет такой команды, это перестало работать с сообщением об ошибке.

Чтобы понять как работы обратных галочек, попытайтесь выполнить это:

$ A=`cat /etc/passwd | head -n1`
$ echo "$A"

cat /etc/passwd |head -n1 должен распечатать первую строку /etc/passwd файл. Но так как мы используем обратные галочки, это не печатает это на консоли. Вместо этого это хранится в A переменная. Можно отозваться эхом $A к этому. Обратите внимание, что более эффективный способ распечатать первую строку использует команду head -n1 /etc/passwd но я хотел указать, что выражение в обратных галочках не должно быть простым.

Таким образом, если первая строка/etc/passwd root:x:0:0:root:/root:/bin/bash, первой командой динамично заменит удар на A="root:x:0:0:root:/root:/bin/bash".

Обратите внимание, что этот синтаксис имеет Оболочку Bourne. Заключение в кавычки и выход становятся быстро кошмаром с ним особенно при запуске вложения их. Ksh, представленный $(...) альтернатива, которая теперь стандартизируется (POSIX) и поддерживается всеми оболочками (даже Оболочка Bourne от Unix v9). Таким образом, необходимо использовать $(...) вместо этого в наше время, если Вы не должны быть портативными к очень старым Оболочкам Bourne.

Также обратите внимание что вывод `...` и $(...) подвергаются разделению слова и поколению имени файла точно так же, как переменное расширение (в zsh, слово, разделяющее только), так должен был бы обычно заключаться в кавычки в контекстах списка.

1
25.09.2016, 01:43
2 ответа

Это читает как Вы, используют обе модемных платы одновременно в том же компьютере для соединения дважды с той же сетью. Это не будет работать в большинстве случаев. С двумя эквивалентными восходящими каналами не может знать Ваша ОС, какой восходящий канал она, как предполагается, использует. Если Вы проверяете свою таблицу маршрутизации (ip route show) Вы, вероятно, обнаружите два маршрута по умолчанию и/или два маршрута к той же подсети Вашего поставщика. Необходимо избавиться от любой неоднозначности в таблице маршрутизации. Первый подход удаляет один маршрут по умолчанию и corresponting (тот же интерфейс) маршрут к подсети поставщика. Это в основном представит одну из Ваших бесполезных карт, но должно решить Вашу проблему возможности соединения.

Для больше/лучше помогают, мы должны были бы знать то, что Вы хотите сделать со своими 2 4-граммовыми картами. Один восходящий канал достаточно для доступа в Интернет...

0
28.01.2020, 02:03

В дополнение к какому было сказано (Вы упомянули iptables, но не, что Вы сделали с ним)... Вы пробовали MASQing трафик, оставляя Вашу машину?

например.

iptables -t nat -I POSTROUTING -o 4g-interface-1 -j MASQUERADE

и

iptables -t nat -I POSTROUTING -o 4g-interface-2 -j MASQUERADE
0
28.01.2020, 02:03

Теги

Похожие вопросы