Я создал Linux PPPoE-сервер на машине CentOS версии 5.4 (Final) x86_64 (Linux 2.6.18-164.el5 # 1 SMP). Я также успешно установил соединение PPPoE. Однако проверка связи с сервером от клиента с использованием интерфейса ppp не выполняется, в то время как сервер может успешно выполнить проверку связи с клиентом.
IP-адрес ppp сервера: 10.0.0.1 IP-адрес ppp клиента: 10.67.15.111
Интерфейс PPP на сервере:
ppp0 Link encap:Point-to-Point Protocol
inet addr:10.0.0.1 P-t-P:10.67.15.111 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:513 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:42304 (41.3 KiB) TX bytes:130 (130.0 b)
Tcpdump на сервере распечатывает исходящий запрос ping и входящие ответы от клиента.
# tcpdump -i ppp0 -X
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ppp0, link-type LINUX_SLL (Linux cooked), capture size 96 bytes
21:37:12.218177 IP 10.0.0.1 > 10.67.15.111: ICMP echo request, id
30999, seq 1, length 64
0x0000: 4500 0054 0000 4000 4001 16f7 0a00 0001 E..T..@.@.......
0x0010: 0a43 0f6f 0800 2d54 7917 0001 b019 b352 .C.o..-Ty......R
0x0020: 0000 0000 2c54 0300 0000 0000 1011 1213 ....,T..........
0x0030: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0040: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
21:37:12.222904 IP 10.67.15.111 > 10.0.0.1: ICMP echo reply, id 30999,
seq 1, length 64
0x0000: 4500 0054 af93 0000 4001 a763 0a43 0f6f E..T....@..c.C.o
0x0010: 0a00 0001 0000 3554 7917 0001 b019 b352 ......5Ty......R
0x0020: 0000 0000 2c54 0300 0000 0000 1011 1213 ....,T..........
0x0030: 1415 1617 1819 1a1b 1c1d 1e1f 2021 2223 .............!"#
0x0040: 2425 2627 2829 2a2b 2c2d 2e2f 3031 3233 $%&'()*+,-./0123
Tcpdump на сервере печатает входящий запрос ping, но ответов не было
21:38:06.942359 IP 10.67.15.111 > 10.0.0.1: ICMP echo request, id
13435, seq 2, length 64
0x0000: 4500 0054 0000 4000 4001 16f7 0a43 0f6f E..T..@.@....C.o
0x0010: 0a00 0001 0800 4c41 347b 0002 a04d d6f3 ......LA4{...M..
0x0020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
21:38:07.946344 IP 10.67.15.111 > 10.0.0.1: ICMP echo request, id
13435, seq 3, length 64
0x0000: 4500 0054 0000 4000 4001 16f7 0a43 0f6f E..T..@.@....C.o
0x0010: 0a00 0001 0800 f1e1 347b 0003 a05d 3142 ........4{...]1B
0x0020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
21:38:08.958344 IP 10.67.15.111 > 10.0.0.1: ICMP echo request, id
13435, seq 4, length 64
0x0000: 4500 0054 0000 4000 4001 16f7 0a43 0f6f E..T..@.@....C.o
0x0010: 0a00 0001 0800 881b 347b 0004 a06c 9af8 ........4{...l..
0x0020: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0030: 0000 0000 0000 0000 0000 0000 0000 0000 ................
0x0040: 0000 0000 0000 0000 0000 0000 0000 0000 ................
Я настроил только конфигурацию, относящуюся к серверу PPPD и PPPoE. Может ли кто-нибудь помочь, я не включил какие-либо параметры брандмауэра.
После проверки обеих ссылок:
http://www.trickylinux.net/disable-ping-response-linux.html
cat /proc/sys/net/ipv4/icmp_echo_ignore_all
0
https://unix.stackexchange.com/questions/44596/what-prevents-a-machine-from-responding-to-pings
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: enforcing
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
#
#
# setenforce 0
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: enforcing
Policy version: 21
Policy from config file: targeted
# system-config-securitylevel-tui
#
#
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: permissive
Policy version: 21
Policy from config file: targeted
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: permissive
Policy version: 21
Policy from config file: targeted
# system-config-securitylevel-tui
#
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: disabled
Policy version: 21
Policy from config file: targeted
# vi system-config-securitylevel
# system-config-securitylevel
#
#
# sestatus
SELinux status: enabled
SELinuxfs mount: /selinux
Current mode: permissive
Mode from config file: disabled
Policy version: 21
Policy from config file: targeted
Также найдите мои текущие настройки брандмауэра в соответствии с комментариями MadHatter.
iptables -L -n -v
Chain INPUT (policy ACCEPT 16472 packets, 12M bytes)
pkts bytes target prot opt in out source destination
0 0 DROP tcp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 tcp dpts:0:1023
0 0 DROP udp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 udp dpts:0:1023
0 0 DROP tcp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02
4186 352K DROP icmp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 icmp type 8
Chain FORWARD (policy DROP 90 packets, 5400 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 17307 packets, 2685K bytes)
pkts bytes target prot opt in out source destination
Тот же cmd после некоторых, я замечаю много падений.
iptables -L -n -v
Chain INPUT (policy ACCEPT 18176 packets, 13M bytes)
pkts bytes target prot opt in out source destination
0 0 DROP tcp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 tcp dpts:0:1023
0 0 DROP udp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 udp dpts:0:1023
0 0 DROP tcp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02
4934 414K DROP icmp -- ppp+ * 0.0.0.0/0 0.0.0.0/0 icmp type 8
Chain FORWARD (policy DROP 90 packets, 5400 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 19179 packets, 3241K bytes)
pkts bytes target prot opt in out source destination
Требуется ли какое-либо явное правило брандмауэра для ответа на входящий запрос ping.
Заранее спасибо. -Муруган
Вы можете сказать, что вы "не включили какие-либо параметры брандмауэра", но вот четвертое правило в вашем INPUT
цепочка, это строка, которая отбрасывает все (входящие) ICMP типа 8 (echo-request
) на все ppp
интерфейсы. У него даже есть большое, увеличивающееся количество пакетов, чтобы вы знали, что он выполняет свою работу.
Пытаться iptables -D INPUT 4
на сервере.
И в ответ на ваш заключительный вопрос выше: нет. Для ответа на запросы PING не требуется явного правила брандмауэра. Однако от вас требуется прекратите явно ронять их на пол.