Хочу сделать NAT.
При трансляции адресов/портов я должен менять еще и исходный МАС и МАС назначения. Все это не проблема, только не знаю, как сделать правильней с МАС-ом назначения:
1 вариант:
Брать МАС назначения из ARP-таблицы системы, если мака для нужного IP нет, тогда ставим МАС гейта по-умолчанию для интерфейса, через который предполагается отправить пакет. Но ведь в системной таблице ARP может не оказаться нужного МАС-а? В том смысле, что таблица динамическая и меняется на лету.
2 вариант:
То-же самое, только брать МАС не из ARP-таблицы системы, а держать свою ARP-таблицу и поддерживать ее в актуальном состоянии при помощи ARP-запросов.
3 вариант:
предложите свой вариант.
Кто вообще в курсе, как правильно сделать? Уважаемый SerpentFly, может подскажете, как это сделано в Internet Gateway?
Благодарю за помощь.