LINUX.ORG.RU

лолшто?
алиас штоле?
делай я разрешаю

guyvernk
()

Нет. Ты лучше цель напиши, а путь решения тебе подскажут.

sdio ★★★★★
()

нет, на алиясе изменить мак адрес нельзя
но если очень хочется, можно какой нить кастыль придумать...
ну там, совместить бридж с чем-то =)

kam ★★
()

Я когда-то такое делал при помощи libpcap, tun/tap и мааааленькой программки на C. Могу поискать исходники...

Deleted
()
Ответ на: комментарий от Deleted

Если не сложно, найди плиз. А сделать это надо для того, чтобы на шлюзе было два канала, разные IP и разные маки, так как провайдер в своих скриптах не умеет работать с двумя IP, но с одним маком при прязке. КОнечно есть вариант поставить свитч, и воткнуть туда две сетевухи, но не очень хочется этого.

Viper
() автор топика
Ответ на: комментарий от sdio

Ага, вроде должно было заработать, но:
Сделал VLAN, далее у интерфейса VLAN-а стал МАК физического интерфейса eth0, поменя его с помощью hw ether для eth0.2. Итог:

eth0 Link encap:Ethernet HWaddr 00:00:DE:16:53:9A
inet addr:192.168.2.7 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:32431599 errors:0 dropped:0 overruns:0 frame:0
TX packets:31009110 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:848102259 (808.8 Mb) TX bytes:868522648 (828.2 Mb)
Interrupt:11 Base address:0x2000

eth0.2 Link encap:Ethernet HWaddr 00:00:00:11:11:11
inet addr:192.168.2.234 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

Но при пинговании IP на VLAN 192.168.2.234 со сторонего компьютера и просмотре arp таблицы, IP имеет мак интерфейса eth0. Что сделано не так?

Viper
() автор топика
Ответ на: комментарий от Viper

> А сделать это надо для того, чтобы на шлюзе было два канала, разные IP и разные маки

бридж+tun/tap

создаете бридж
brctl addbr br0
создаете tap0
tunctl -t tap0
втыкаете в ваш бридж eth0 и tap0
brctl addif br0 eth0 (тут бридж получит автоматом MAC от eth0)
brctl addif br0 tap0
прописываете на br0 то, что раньше писали на eth0
на tap0 соответственно второй айпи
вместо eth0 теперь br0...

r0mik
()
Ответ на: комментарий от Viper

Viper> Что сделано не так?
Не, vlan не поможет. Я так кинул не подумав.

sdio ★★★★★
()
Ответ на: комментарий от Viper

Если не сложно, найди плиз. А сделать это надо для того, чтобы на шлюзе было два канала, разные IP и разные маки, так как провайдер в своих скриптах не умеет работать с двумя IP, но с одним маком при прязке. КОнечно есть вариант поставить свитч, и воткнуть туда две сетевухи, но не очень хочется этого.

Тот исходник оказался безвозвратно утерян, так что я написал с нуля =).

# Забираем исходники с помощью mercurial
hg clone https://ifdup.ivans-playground.googlecode.com/hg/ ifdup
cd ifdup

# Меняем имя "копируемого" интерфейса и желаемое имя вирутального
yourfavoriteeditor ifdup.c

# Собираем
make

# Запускаем
modprobe tun
./ifdup
Код очень примитивен, но работает.

Deleted
()
Ответ на: комментарий от true_admin

оно снифает все пакеты на интерфейсе и запихивает в tap? :)

Ага =). Можно сделать чуть более продвинутый вариант: фильтровать по MAC-адресам. Тогда получится что-то типа программного свича.

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.