Используя Ipset и Iptables для фильтрации MAC-адреса

Вам нужен виртуальный псевдоним имени хоста.

<Host name="www.mydomain.com" ...>
  ...
  <Alias>mydomain.com</Alias>
  ...
</Host>
1
задан 13 April 2017 в 15:14
1 ответ

В основном что-то вроде этого, но вы должны связать IP с MAC, чистых наборов MAC, похоже, не существует:

# ipset --create test macipmap --network 10.0.0.0/16
# ipset --add test 10.0.0.1,00:11:22:33:44:55
# iptables -A INPUT -i eth5 -m set --match-set test src -j ACCEPT

Здесь вы видите содержимое карты и ссылку -counter, указывающий на правило iptables, ссылающееся на этот набор:

# ipset -L test
Name: test
Type: macipmap
References: 1
Header: from: 10.0.0.0 to: 10.0.255.255
Members:
10.0.0.1,00:11:22:33:44:55

Есть некоторые вещи, которые следует учитывать:

  • Этот тип набора технически ограничен последовательными адресами в 64 КБ (не уверен, должны ли они быть «выровненными по подсети»), найдено it здесь
  • Ваше ядро ​​должно поддерживать ipset, к сожалению, наиболее распространенные ядра стандартных дистрибутивов не поддерживают
  • Вы можете установить статический ARP в качестве альтернативы
  • MAC-адреса можно легко подделать
2
ответ дан 3 December 2019 в 21:49

Теги

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