Jump to content
Калькуляторы

Linux vlan отправляет в нужный интерфейс, но другой соурс IP

схема:

 

VMWARE , на ней крутится Elastix сборка, один интерфейс, создано 2 влана:

ifconfig

eth0 Link encap:Ethernet HWaddr 00:0C:29:E8:D7:83

inet addr:172.16.255.230 Bcast:172.16.255.255 Mask:255.255.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:1899563 errors:0 dropped:0 overruns:0 frame:0

TX packets:1760502 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:1000

RX bytes:493241424 (470.3 MiB) TX bytes:525062323 (500.7 MiB)

vlan2 Link encap:Ethernet HWaddr 00:0C:29:E8:D7:83

inet addr:172.20.1.90 Bcast:172.20.255.255 Mask:255.255.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0 frame:0

TX packets:399578831 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 b) TX bytes:454123386 (433.0 MiB)

 

vlan6 Link encap:Ethernet HWaddr 00:0C:29:E8:D7:83

inet addr:192.168.44.1 Bcast:192.168.44.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:66148612 errors:0 dropped:0 overruns:0 carrier:0

collisions:0 txqueuelen:0

RX bytes:0 (0.0 b) TX bytes:70940859 (67.6 MiB)

 

 

cat /etc/sysconfig/network-scripts/ifcfg-eth0

# VMware VMXNET3 Ethernet Controller

DEVICE=eth0

BOOTPROTO=none

ONBOOT=yes

HWADDR=00:0c:29:e8:d7:83

TYPE=Ethernet

NETMASK=255.255.0.0

IPADDR=172.16.255.230

 

cat /etc/sysconfig/network-scripts/ifcfg-vlan2

VLAN=yes

VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD

DEVICE=vlan2

PHYSDEV=eth0

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet

IPADDR=172.20.1.90

NETMASK=255.255.0.0

 

cat /etc/sysconfig/network-scripts/ifcfg-vlan6

VLAN=yes

VLAN_NAME_TYPE=VLAN_PLUS_VID_NO_PAD

DEVICE=vlan6

PHYSDEV=eth0

BOOTPROTO=static

ONBOOT=yes

TYPE=Ethernet

IPADDR=192.168.44.1

NETMASK=255.255.255.0

GATEWAY=192.168.44.254

DNS1=10.0.0.1

 

 

Планировалось использовать vlan2 для подключения IPPhones из локальной сети, влан6 для регистраций на стороне провайдера (ну и доступ в инет)

 

 

Итого схема во вложении

 

ПРОБЛЕМА вот в чем:

слушаю интерфейс на микротике, который является шлюзом для Астера и в нем вижу, что в соединениях соурс IP значится 172.20.1.90 - адрес второго влана

 

 

 

 

tcpdump самого сервера показывает вот что:

 

 

tcpdump -i vlan6 host 192.168.44.1

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on vlan6, link-type EN10MB (Ethernet), capture size 96 bytes

10:36:04.086839 arp who-has 192.168.44.254 tell 192.168.44.1

10:36:04.087063 arp reply 192.168.44.254 is-at c4:6e:1f:05:83:52 (oui Unknown)

10:36:04.087500 IP 192.168.44.1.42604 > 10.0.0.1.domain: 21739+ PTR? 254.44.168.192.in-addr.arpa. (45)

10:36:04.100766 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:04.100868 IP 192.168.44.1.40692 > 10.0.0.1.domain: 21739+ PTR? 254.44.168.192.in-addr.arpa. (45)

10:36:04.114179 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:04.114346 IP 192.168.44.1.53041 > 10.0.0.1.domain: 54612+ PTR? 1.44.168.192.in-addr.arpa. (43)

10:36:04.129188 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:04.130218 IP 192.168.44.1.59852 > 10.0.0.1.domain: 54612+ PTR? 1.44.168.192.in-addr.arpa. (43)

10:36:04.146150 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:04.146429 IP 192.168.44.1.51534 > 10.0.0.1.domain: 39449+ PTR? 1.0.0.10.in-addr.arpa. (39)

10:36:04.162483 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:04.162565 IP 192.168.44.1.55438 > 10.0.0.1.domain: 39449+ PTR? 1.0.0.10.in-addr.arpa. (39)

10:36:04.178839 IP 10.0.0.1 > 192.168.44.1: ICMP 10.0.0.1 udp port domain unreachable, length 36

10:36:09.249277 arp who-has 192.168.44.1 tell 192.168.44.254

10:36:09.249290 arp reply 192.168.44.1 is-at 00:0c:29:e8:d7:83 (oui Unknown)

 

 

 

А вот tcpdump соединений с сип сервером:

 

tcpdump -i vlan6 host 92.46.61.21

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on vlan6, link-type EN10MB (Ethernet), capture size 96 bytes

10:37:29.652827 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 326

10:37:29.682088 IP 92.46.61.21.sip > 172.20.1.90.6960: SIP, length: 262

10:37:29.704034 IP 92.46.61.21.sip > 172.20.1.90.6960: SIP, length: 297

10:37:29.704127 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 411

10:38:00.594167 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 793

10:38:00.626809 IP 92.46.61.21.sip > 172.20.1.90.6960: SIP, length: 237

10:38:00.680835 IP 92.46.61.21.sip > 172.20.1.90.6960: SIP, length: 945

10:38:00.681774 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 647

10:38:01.973755 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 939

10:38:02.079028 IP 92.46.61.21.sip > 172.20.1.90.6960: SIP, length: 766

10:38:02.079907 IP 172.20.1.90.6960 > 92.46.61.21.sip: SIP, length: 410

 

 

Видим, что астер запросы к 92.46.61.21 отправляет с 172.20.1.90

 

Во вложении(второй файл - скриншо torch интерфейса на микротике, на нем так же видно, что соурс - 172,20,1,90)

 

 

И вот таблица маршрутизации астера:

 

 

route -n

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

192.168.44.0 0.0.0.0 255.255.255.0 U 0 0 0 vlan6

169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 vlan6

172.20.0.0 0.0.0.0 255.255.0.0 U 0 0 0 vlan2

0.0.0.0 192.168.44.254 0.0.0.0 UG 0 0 0 vlan6

 

Что я сделал не так?

post-72225-080907900 1488428943_thumb.png

post-72225-067799300 1488429760_thumb.jpg

Share this post


Link to post
Share on other sites

1. Что-то я не припомню что бы при использовании виланов, на физический интерфейс вешался IP адрес.

2. Если у вас всего пару виланов, создайте на ВМ пару сетевых интерфейсов, каждый для своего вилана и избавитесь от кучи гемороя.

Share this post


Link to post
Share on other sites

Linux vlan отправляет в нужный интерфейс, но другой соурс IP

С чего Вы решили, что это Linux отправляет, а не процесс asterisk выставляет source ip?

Посмотрите sip.conf и asterisk -rx 'sip show settings' на предмет жесткого указания IP адреса.

Share this post


Link to post
Share on other sites

С чего Вы решили, что это Linux отправляет, а не процесс asterisk выставляет source ip?

Посмотрите sip.conf и asterisk -rx 'sip show settings' на предмет жесткого указания IP адреса.

Вот, верно все! я когда то давно указал биндить этот адрес и забыл вовсе!

 

Global Settings:

----------------

UDP Bindaddress: 172.20.1.90:6960

 

Благодарю за помощь!!!

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.