FreeBSD 10 IPFW IPv6
Я пытаюсь разрешить соединения IPv6 на моем сервере FreeBSD 10.
У меня есть работающее соединение IPv6. Но IPFW блокирует весь трафик IPv6.
#!/bin/sh
#
# flush existing rules
ipfw -q flush
# allow established connections
ipfw -q add 1 check-state
# allow loopback traffic
ipfw -q add 2 allow all from any to any via lo0
# allow previously established TCP connections
ipfw -q add 3 allow tcp from any to any established
#
# public services inbound: 22/tcp (SSH) and 80/tcp (HTTP)
ipfw -q add 60100 set 1 allow tcp from any to me 22 in setup keep-state
ipfw -q add 60101 set 1 allow tcp from any to me 80 in setup keep-state
#
# allow all traffic going out
ipfw -q add 200 set 1 allow udp from me to any out keep-state
ipfw -q add 201 set 1 allow tcp from me to any out setup keep-state
#
# allow common ICMP types in and out
ipfw -q add 400 set 1 allow icmp from me to any icmptypes 0,3,8,11,12,13,14
ipfw -q add 401 set 1 allow icmp from any to me icmptypes 0,3,8,11,12,13,14
#
# allow tcp connections out on backup interface
ipfw -q add 500 set 1 allow tcp from any to any out via re1 setup keep-state
#
# deny everything else coming in
#ipfw -q add 999 set 1 deny all from any to any
Как я могу включить IPv6 для http и imcp в этой настройке? Заранее спасибо!
1 ответ
Ваш трафик IPv6 не соответствует ни одному из правил, поэтому соответствует последнему правилу, которое является явным правилом запрета.
Прежде всего необходимо убедиться, что IPFW обрабатывает трафик IPv6. Это делается путем включения его с помощью sysctl:
sysctl net.inet6.ip6.fw.enable=1
IPFW поддерживает различные ключевые слова, специфичные для IPv6, например me6
вместо me
, Поэтому вы можете добавить правила, подобные следующим:
ipfw -q add 60102 set 1 allow tcp from any to me6 80 in setup keep-state
ipfw -q add 60103 set 1 allow tcp from any to me6 22 in setup keep-state
Для получения дополнительной информации по этой теме вы можете обратиться к разделу ФОРМАТ ПРАВИЛА на ipfw(8)
Страница man: https://www.freebsd.org/cgi/man.cgi?query=ipfw