linux開啟組播命令 linux組播設置

如何在linux下打開組播功能

IGMP協議運行于主機和與主機直接相連的組播路由器之間,主機通過此協議告訴本地路由器希望加入并接受某個特定組播組的信息,同時路由器通過此協議周期性地查詢局域網內某個已知組的成員是否處于活動狀態(即該網段是否仍有屬于某個組播組的成員),實現所連網絡組成員關系的收集與維護。IGMP有三個版本,IGMPv1由RFC1112定義,目前通用的是IGMPv2,由RFC2236定義。IGMPv3目前仍然是一個草案。IGMPv1中定義了基本的組成員查詢和報告過程,IGMPv2在此基礎上添加了組成員快速離開的機制,IGMPv3中增加的主要功能是成員可以指定接收或指定不接收某些組播源的報文。這里著重介紹IGMPv2協議的功能。

涇源ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為成都創新互聯公司的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

IGMPv2通過查詢器選舉機制為所連網段選舉唯一的查詢器。查詢器周期性的發送普遍組查詢消息進行成員關系查詢;主機發送報告消息來應答查詢。當要加入組播組時,主機不必等待查詢消息,主動發送報告消息。當要離開組播組時,主機發送離開組消息;收到離開組消息后,查詢器發送特定組查詢消息來確定是否所有組成員都已離開。

通過上述IGMP機制,在組播路由器里建立起一張表,其中包含路由器的各個端口以及在端口所對應的子網上都有哪些組的成員。當路由器接收到某個組G的數據報文后,只向那些有G的成員的端口上轉發數據報文。至于數據報文在路由器之間如何轉發則由路由協議決定,IGM

linux下如何開啟multicast

socket創建UDP通信描述符后,setsockopt加入多播組,再bind綁定到該網卡上

//在指定的IP和端口上接收多播組的報文

int??recv_msg(char??*ip???,?unsigned??short??port?,?char??*mult_ip?)

{

//建立通訊套接字

int??fd?=?socket(?PF_INET?,?SOCK_DGRAM?,?0?);

if(?-1?==?fd?)

{

perror("socket?failed");

return??-1;

}

//設置地址重用和接收多播

{

int??reuse?=?1?;

struct??ip_mreqn??mult_addr?=?{0};

mult_addr.imr_multiaddr.s_addr?=?inet_addr(?mult_ip?);

mult_addr.imr_address.s_addr?=?inet_addr(?ip?);

if(?-1?==?setsockopt(?fd?,?IPPROTO_IP?,?IP_ADD_MEMBERSHIP?,

mult_addr?,?sizeof(mult_addr)))

{

perror("setsockopt?add?failed");

goto??_out;

}

if(?-1?==?setsockopt(?fd?,?SOL_SOCKET,?SO_REUSEADDR,

reuse?,?sizeof(reuse)?)?)

{

perror("setsockopt?reuse?failed");

}

}

//綁定地址和端口

{

struct??sockaddr_in??addr?=?{0};

addr.sin_family?=?PF_INET;

addr.sin_port?=?htons(?port?);

addr.sin_addr.s_addr?=?INADDR_ANY;

if(?-1?==?bind(?fd?,?(struct?sockaddr*)addr?,

sizeof(addr)?)?)

{

perror("bind?failed");

goto??_out;

}

}

//接收信息

while(1)

{

char??buf[128]?=?{0};

int???ret??=?0?;

struct?sockaddr_in??client_addr?=?{0};

int??len?=?sizeof(client_addr)?;

ret?=?recvfrom(?fd?,?buf?,?sizeof(buf),?0?,?

(struct?sockaddr*)client_addr?,

len?);

//被信號中斷則重啟

if(?(-1?==?ret)(EINTR?==errno?))

{

continue;

}

else?if(?-1?==ret?)

{

perror("recvfrom?failed");

goto??_out;

}

else?if(?ret?0?)

{

printf("%s\n"?,?buf?);

}

usleep(?100*1000?);

}

_out:

if(?fd?=?0)

{

close(?fd?);

}

return??0;

}

怎樣用Linux實現組播路由轉發

這就要有PIM(Protocol Independent Multicast,協議無關組播組)協議的支持,就必須在Linux環境下安裝Pimd軟件協議包。 安裝補丁文件 安裝Pimd軟件協議包需要兩個補丁文件:pimkern-freebsd-4.6.patch和netstat-freebsd-4.6.patch。安裝步驟如下: 首先將兩個補丁文件拷貝到/usr/src/目錄下,并執行以下命令:#patch -p2 netstat-freebsd-4.6.patch #patch -p2 pimkern-freebsd-4.6.patch 執行以下命令,編譯并安裝netstat:#cd /usr/src/usr.bin/netstat #make #make install 重新編譯內核 執行以下命令,修改multi配置文件:#cd /usr/src/sys/i386/conf/ #cp GENRIC multi #vi multi 在multi配置文件中,加入下列兩行代碼:options MROUTING options PIM 保存并退出vi編輯器。 在當前multi配置文件所在的目錄執行以下命令:#config multi #cd /usr/src/sys/compile/multi/ #make depend #make #make install 至此,新內核編譯完畢。 備份Kernel文件 新內核編譯完畢后,在重新啟動前,要先將根目錄下原有的Kernel文件進行備份。#cd / #mv kernel kernel.old 若提示“operation not permitted”,則需要先執行以下命令:#chflags noschg /kernel 備份Kernel文件后執行以下命令:#cp /usr/src/sys/compile/multi/kernel /kernel 在系統重新啟動后,默認選擇的便是新編譯的內核。 安裝Pimd軟件協議包 Linux下Pimd軟件協議包代碼的起源有兩個地方,一個是日本的KAME項目組,另一個是南加州大學信息科學學院。到這兩個組織的主頁上都可以下載所需要的pimd-current.tar.gz 協議包和上面提到的兩個補丁。 用以下命令解壓縮 pimd-current.tar.gz 軟件包,并安裝:#tar zxf pimd-current.tar.gz #cd pimd-2.1.0-alpha29.16 #make #make install 以上命令執行過程中可能會出現錯誤,需要手工將其完成,拷貝當前目錄下的pimd文件:#cp pimd /usr/local/bin/ #chmod 755 pimd #cp pimd.conf /etc/ 至此,Pimd軟件協議包安裝完畢。還需要打開Linux系統的路由轉發功能,才能實現組播包的轉發,即在配置文件rc.conf中增加以下代碼,重啟后生效。作者:龍宇翔 苑慶國

網站欄目:linux開啟組播命令 linux組播設置
網頁鏈接:http://m.kartarina.com/article16/hjocgg.html

成都網站建設公司_創新互聯,為您提供微信小程序定制開發手機網站建設外貿網站建設電子商務網站排名

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司
主站蜘蛛池模板: 久久久久无码精品国产app| 午夜无码国产理论在线| 免费a级毛片无码a∨蜜芽试看| 无码精品一区二区三区在线| 人妻aⅴ中文字幕无码| 亚洲欧洲精品无码AV| 天堂一区人妻无码| 国产精品视频一区二区三区无码| 亚洲AV无码男人的天堂| 亚洲av无码一区二区三区乱子伦 | 亚洲av永久无码精品国产精品| 亚洲美免无码中文字幕在线| 成年无码av片在线| 免费无码又爽又刺激毛片| 亚洲AV无码久久精品狠狠爱浪潮| 一级毛片中出无码| 无码任你躁久久久久久| 精品久久久久久无码专区不卡| 国产精品视频一区二区三区无码| yy111111少妇无码影院| 免费无码又爽又高潮视频| 精品无码专区亚洲| 九九在线中文字幕无码| 亚洲aⅴ无码专区在线观看春色| 亚洲成A∨人片在线观看无码| 亚洲精品无码午夜福利中文字幕 | 国产成人精品无码一区二区| 亚洲一级Av无码毛片久久精品 | 精品人妻无码专区中文字幕| 无码任你躁久久久久久老妇| 伊人无码精品久久一区二区| 亚洲AV无码专区国产乱码4SE| 国产成人无码A区精油按摩| 97碰碰碰人妻视频无码| 无码中文字幕乱在线观看| 久久久久亚洲av无码尤物| 国产三级无码内射在线看| 亚洲AV日韩AV永久无码下载| 日韩精品人妻系列无码专区| 日日摸日日踫夜夜爽无码| 亚洲中文无码a∨在线观看|