Я настраиваю pgpool экземпляр для получения HA postgresql сервисов. Я следую этой конфигурации.
Я нашел команду, и я выполнил ее вручную в моей консоли:
arping_cmd = 'arping -U $_IP_$ -w 1'
Но это не работает, затем я хочу найти подобное поведение, потому что я нахожусь на человечности 12.04. Как я могу сделать это?
$_IP_$
переменная заменяется IP значением в конфигурации. Основная проблема arping
команда.
Когда выполнение изнасилования управляет в терминале, я получаю следующий вывод:
$ arping -U 192.168.13.1 -w -1
arping: device (option -I) is required.
Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
-f : quit on first reply
-q : be quiet
-b : keep broadcasting, don't go unicast
-D : duplicate address detection mode
-U : Unsolicited ARP mode, update your neighbours
-A : ARP answer mode, update your neighbours
-V : print version and exit
-c count : how many packets to send
-w timeout : how long to wait for a reply
-I device : which ethernet device to use
-s source : source ip address
destination : ask for what ip address
Решение находится в первой строке после выполнения команды. Используйте-I и-s для решения проблемы.-I указывает интерфейс, чтобы сделать, изнасилование на и-s должны указать, что источник Ваш делает изнасилование от. Это дрянно, я знаю, но обновляю Вашу команду для сходства с ниже:
arping_cmd = 'arping -U $_IP_$ -w 1 -I ethX -s SOURCE_IP'
где ethx является Ваш Ethernet, и SOURCE_IP является IP, от которого Вы собираетесь сделать изнасилование.
Надежда это помогает, Аплодисменты
Я получаю ту же ошибку как submitter, говоря, что "-U" не является допустимой опцией:
root@pgpool-2:/var/log# arping -U 192.168.13.1 -w -1
arping: invalid option -- 'U'
ARPing 2.11, by Thomas Habets <thomas@habets.se>
usage: arping [ -0aAbdDeFpqrRuv ] [ -w <us> ] [ -S <host/ip> ]
[ -T <host/ip ] [ -s <MAC> ] [ -t <MAC> ] [ -c <count> ]
[ -i <interface> ] <host/ip/MAC | -B>
For complete usage info, use --help or check the manpage.
Я нахожусь на Ubuntu 14.04 и нет никакого упоминания о "-U" в странице справочника:
root@pgpool-2:/var/log# man arping | grep '\-U'
root@pgpool-2:/var/log#
Я изменил мой на это:
arping_cmd = 'arping -v $_IP_$ -w 1 -c 100'
Так в основном:
У меня была аналогичная проблема в Fedora:
$ arping 192.168.1.162
arping: Suitable device could not be determined. Please, use option -I.
...
Мое решение было:
$ arping $ip_addr -I $(ip route get $ip_addr | cut -d\ -f 3 |xargs)
Где ip_addr будет содержать IP-адрес, который нужно пинговать.
Чтобы остановить это:
ip route get 192.168.1.162
вернет маршрут и интерфейс, используемые ядром для указанного ip:
192.168.1.162 dev eth1 src 192.168.1.1
затем используйте:
cut -d\ -f 3
, чтобы разделить строку разделителем '\' (экранированный пробел) и вернуть 3 -th подстрока:
eth1
затем использовать xargs, чтобы удалить все пробелы вокруг интерфейса.
Надеюсь, это будет полезно.