天天看点

CentOS5.11安装mediaproxy-2.4.4

因为工作中需要使用到opensips+mediaproxy,这边就介绍下CentOS5.11下面安装mediaproxy2.4.4.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

<code>yum -y </code><code>install</code> <code>gcc gcc-c++ libgpg-error-devel python-devel libgcrypt-devel python-setuptools</code>

<code>rpm -ivh libnfnetlink-0.0.40-1.el5.rf.x86_64.rpm</code>

<code>rpm -ivh libnfnetlink-devel-0.0.40-1.el5.rf.x86_64.rpm</code>

<code> </code><code>rpm -ivh libnetfilter_conntrack-0.0.97-1.el5.rf.x86_64.rpm</code>

<code> </code><code>rpm -ivh libnetfilter_conntrack-devel-0.0.97-1.el5.rf.x86_64.rpm</code>

<code> </code> 

<code> </code><code>tar</code> <code>jxf gnutls-2.4.2.</code><code>tar</code><code>.bz2</code>

<code> </code><code>cd</code> <code>gnutls-2.4.2</code>

<code> </code><code>.</code><code>/configure</code> <code>--with-included-libtasn1 --libdir=</code><code>/usr/local/lib64/</code>

<code> </code><code>make</code>

<code> </code><code>make</code> <code>install</code>

<code>ln</code> <code>-s </code><code>/usr/local/lib64/libgnutl</code><code>* </code><code>/usr/lib64/</code>

<code>ln</code> <code>-s </code><code>/usr/lib64/libgcrypt</code><code>.11 </code><code>/usr/lib64/libgcrypt</code><code>.11.2.2</code>

<code>ln</code> <code>-s </code><code>/usr/lib64/libgcrypt</code><code>.11 </code><code>/usr/lib64/libgcrypt</code><code>.11.2.3</code>

<code>cd</code>

<code>tar</code> <code>zxf ctypes-1.0.2.</code><code>tar</code><code>.gz</code>

<code>cd</code> <code>ctypes-1.0.2</code>

<code>.</code><code>/setup</code><code>.py build</code>

<code>.</code><code>/setup</code><code>.py </code><code>install</code>

<code>cd</code> 

<code> </code><code>tar</code> <code>zxf python-application-1.1.5.</code><code>tar</code><code>.gz</code>

<code> </code><code>cd</code> <code>python-application-1.1.5</code>

<code> </code><code>.</code><code>/setup</code><code>.py build</code>

<code> </code><code>.</code><code>/setup</code><code>.py </code><code>install</code>

<code> </code><code>cd</code>

<code> </code><code>tar</code> <code>zxf python-cjson-1.0.5.</code><code>tar</code><code>.gz</code>

<code> </code><code>cd</code> <code>python-cjson-1.0.5</code>

<code> </code><code>tar</code> <code>zxf python-gnutls-1.1.9.</code><code>tar</code><code>.gz</code>

<code> </code><code>cd</code> <code>python-gnutls-1.1.9</code>

<code> </code><code>rpm -ivh python-zopeinterface-3.3.0-114.2.x86_64.rpm</code>

<code> </code><code>tar</code> <code>jxf Twisted-8.1.0.</code><code>tar</code><code>.bz2</code>

<code> </code><code>cd</code> <code>Twisted-8.1.0</code>

<code> </code><code>tar</code> <code>zxf mediaproxy-2.4.4.</code><code>tar</code><code>.gz</code>

<code> </code><code>cd</code> <code>mediaproxy-2.4.4</code>

<code> </code><code>mkdir</code> <code>/etc/mediaproxy</code>

<code> </code><code>mkdir</code> <code>-p </code><code>/var/run/opensips/</code>

<code> </code><code>mkdir</code> <code>-p </code><code>/var/run/mediaproxy</code>

<code> </code><code>cp</code> <code>/root/mediaproxy-2</code><code>.4.4</code><code>/config</code><code>.ini.sample </code><code>/etc/mediaproxy/config</code><code>.ini</code>

<code> </code><code>cp</code> <code>-rf </code><code>/root/mediaproxy-2</code><code>.4.4</code><code>/tls/</code> <code>/etc/mediaproxy/</code>

<code> </code><code>开启ip_forward</code>

<code> </code><code>sed</code> <code>-i </code><code>'s#net.ipv4.ip_forward = 0#net.ipv4.ip_forward = 1#g'</code> <code>/etc/sysctl</code><code>.conf</code>

<code> </code><code>sysctl -p</code>

<code> </code><code>config.ini</code>

<code> </code><code>[Relay]</code>

<code>dispatchers = 192.168.88.245</code>

<code>passport = None</code>

<code>relay_ip = 192.168.88.245</code>

<code>port_range = 50000:60000</code>

<code>log_level = DEBUG</code>

<code>on_hold_timeout = 1800</code>

<code>[Dispatcher]</code>

<code>socket_path = dispatcher.sock</code>

<code>listen = 192.168.88.245</code>

<code>listen_management = 192.168.88.245</code>

<code>management_use_tls = no</code>

<code>management_passport = None</code>

<code>[TLS]</code>

<code>[Database]</code>

<code>[Radius]</code>

<code>[OpenSIPS]</code>

<code>socket_path = </code><code>/var/run/opensips/socket</code>

<code>max_connections = 10</code>

在opensips的配置文件opensips.cfg的route上面增加

<code>loadmodule </code><code>"mediaproxy.so"</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"disable"</code><code>, 0)</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"mediaproxy_socket"</code><code>, </code><code>"/var/run/mediaproxy/dispatcher.sock"</code><code>)</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"mediaproxy_timeout"</code><code>, 1000)</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"signaling_ip_avp"</code><code>, </code><code>"$avp(nat_ip)"</code><code>)</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"media_relay_avp"</code><code>, </code><code>"$avp(media_relay)"</code><code>)</code>

<code>modparam(</code><code>"mediaproxy"</code><code>, </code><code>"ice_candidate"</code><code>, </code><code>"low-priority"</code><code>)</code>

运行media-dispatcher可能没有问题,可是运行media-relay就可能会出现

<code>May 22 11:50:40 localhost media-relay[9757]: Starting MediaProxy Relay 2.4.4</code>

<code>May 22 11:50:40 localhost media-relay[9757]: fatal error: failed to create MediaProxy Relay: Could not initialize the iptables </code><code>'nat'</code> <code>table. Missing kernel support or running without root priviliges.</code>

这个时候运行

[root@mySer ~]# lsmod|grep nat

#发现没有输出

再运行

<code>[root@mySer ~]</code><code># modprobe iptable_nat</code>

<code>[root@mySer ~]</code><code># lsmod|grep nat</code>

<code>iptable_nat            40517  0</code>

<code>ip_nat                 53357  1 iptable_nat</code>

<code>ip_tables              55329  1 iptable_nat</code>

<code>ip_conntrack           92005  2 iptable_nat,ip_nat</code>

<code>nfnetlink              40585  2 ip_nat,ip_conntrack</code>

<code>x_tables               50377  2 iptable_nat,ip_tables</code>

使用modprobe iptable_nat可能重新启动后就失效,这个时候你需要

<code>echo</code> <code>"modprobe iptable_nat"</code> <code>&gt;&gt; </code><code>/etc/sysconfig/modules/iptable_nat</code><code>.modules</code>

<code>chmod</code> <code>+x </code><code>/etc/sysconfig/modules/iptable_nat</code><code>.modules</code>

在启动media-relay就成功了。

本文转自 rong341233 51CTO博客,原文链接:http://blog.51cto.com/fengwan/1652807