第一篇:實驗六 虛擬局域網VLAN(一)實驗報告
實驗六 虛擬局域網VLAN
(一)實驗報告
一.交換機端口隔離 1.實驗名稱
交換機端口隔離。2.實驗目的
理解Port Vlan的配置。3.實驗步驟
步驟1.在未劃VLAN前兩臺PC互相PING可以通。
步驟2.將接口分配到VLAN。
步驟3.兩臺PC互相PING不通。
二.跨交換機實現VLAN 1.實驗名稱
跨交換機實現VLAN。2.實驗目的
理解VLAN如何掛交換機實現。3.實驗步驟
步驟1.在交換機SwitchA上創建Vlan 10,并將0/5端口劃分到Vlan 10中。
步驟2.在交換機SwitchA上創建Vlan 20,并將0/15端口劃分到Vlan 20中。
步驟3.在交換機SwitchA上將與SwitchB相連的端口(假設為0/24端口)定義為tagvlan模式。
步驟4.在交換機SwitchB上創建Vlan 10,并將0/5端口劃分到Vlan 10中。
步驟5.在交換機SwitchB上將與SwitchA相連的端口(假設為0/24端口)定義為tagvlan模式。
步驟6.驗證PC1與PC3能互相通信,但PC2與PC3不能互相通信。
三.實驗總結
本次試驗分為兩個試驗。交換機端口隔離以及跨交換機實現VLAN。
通過試驗中實際的操作,形象的理解了Port Vlan的配置和理解VLAN如何掛交換機實現。實驗一通過劃分Port Vlan實現交換端口隔離,實驗二在同一Vlan里的計算系統能跨交換機進行相互通信,而在不同Vlan里的計算機系統不能進行相互通信,需要注意的是,兩臺交換機之間相連的端口應該設置為tag vlan模式。
第二篇:計算機網絡實習報告七 虛擬局域網VlAN(二)
實驗七 虛擬局域網VlAN
(二)一.實驗目的通過三層交換機實現VLAN間通信。
二.實驗環境
實驗中有兩臺交換機,兩臺主機連到交換機A上,兩臺主機連到交換機B上。
三.實驗步驟
說明:在進行實驗前先進入超級終端,通過show vlan 語句查看了已經劃分的模式,并且通過相應語句no vlan語句進行了刪除。
步驟1.在交換機SwitchA 上創建Vlan10,并將0/5端口劃分到Vlan10中。
過程:在超級終端內創建Vlan10,進入接口配置模式,將0/5端口劃分到Vlan10中,并通過了驗證。
步驟2.在交換機switchA 上創建Vlan20,并將0/15端口劃分到Vlan20中。
過程:步驟如上,在超級終端內創建Vlan20,進入接口配置模式,將0/15劃分到Vlan20中,并通過了驗證。
步驟3.在交換機switchA上將與switchB相連的端口0/24定義為tag vlan模式。
過程:進入接口配置模式,通過switchport mode trunk 語句將0/24端口設為了tag vlan模式。并且通過了驗證。
等對方在交換機switchB上創建了Vlan10 ,并將0/5端口劃分到vlan10中,而且通過驗證。然后在交換機switchB上將與switchA上相連德端口0/24設為了tag vlan模式,通過驗證。步驟4:驗證pc1與pc3能互相通信,但pc2與pc3不能互相通信。
過程:用一根網線將交換機switchA與交換機switchB連接起來,關閉超級終端,通過ping語句進行連接,最后驗證結果為在pc1的命令行方式下驗證能ping通pc3,在pc2的命令行方式下驗證不能ping通pc3.步驟5:設置三層交換機VLAN間通訊。
過程:創建虛擬接口Vlan10,配置虛擬接口vlan10的地址為192.168.10.254,并開啟虛擬接口,同理創建虛擬接口Vlan20,配置虛擬接口vlan10的地址為192.168.20.254.步驟6:將pc1與pc3的默認網關設置為192.168.10.254,將pc2的默認網關設置為:192.168.20.254.過程:通過ping語句驗證了pc2與pc3之間可以互相通信了,實現了不同Vlan 內的主機可以互相ping通。
四.實驗總結
整個實習過程中前面部分都是比較容易的,所以很快的完成,但是在進行到最后要對Pc機設置默認網關時出現了問題,我們以為得進入路由器設置,所以進入超級終端設置,最后發現pc2與pc3還是ping不通。經過與大家的交流才知道在哪里設置pc的默認網關,總之設置pc的網關這個環節浪費了不少時間,關鍵是不太熟悉。通過本次實習,使我掌握了三層交換機實現VLAN間的互相通信,對每種命令有了更深一層的理解。
第三篇:實驗三 交換式和虛擬局域網3
南京信息工程大學 實驗(實習)報告
實驗名 稱交換式和虛擬局域網日期 得分 指導教師
計算機 專業 亂箭工程 年級 09 班次 1 姓名 周海燕 學號 20092311111
1、實驗目的
通過組裝交換式以太網,初步了解和掌握配置VLAN的方法
2、實驗內容
(1)利用交換機組裝簡單的交換式以太網(2)配置以太網交換機
(3)在交換式以太網上劃分VLAN
3、實驗步驟
拓撲圖:
Switch(config)#hostname S1 S1(config)# S1(config)#line console 0 S1(config-line)#login S1(config-line)#password 123456 S1(config-line)#exit S1#logout Router con0 is now available Press RETURN to get started Password: S1> S1(config)#line vty 0 15 S1(config-line)#login S1(config-line)#password abcdef S1(config)#enable password qqqqq S1(config)#enable secret wewewe S1(config)#exit S1#exit Password: S1>enable Password: S1# S1(config)#ip default-gateway 201.71.19.1 S1(config)#interface vlan 1 S1(config-if)#ip address 201.71.19.8 255.255.255.0 S1(config-if)#no shutdown S1#copy running-config startup-config S1#reload >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Switch#vlan database Switch(vlan)#vlan 20 name VLAN20 Switch(vlan)#vlan 30 name VLAN30 Switch(vlan)#exit Switch# Switch#conf t
Switch(config)#interface fa0/5 Switch(config-if)#switchport access vlan 20 Switch(config-if)#interface fa0/6 Switch(config-if)#switchport access vlan 20 Switch(config-if)#interface fa0/9 Switch(config-if)#switchport access vlan 30 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 在S1上創建VLAN2: S1#vlan database S1(vlan)#vlan 2 name VLAN2 S1(vlan)#exit 為VLAN2分配接口: S1#conf t S1(config)#interface fa0/3 S1(config-if)#switchport access vlan 2 S1(config-if)#interface fa0/4 S1(config-if)#switchport access vlan 2 S1(config-if)#interface fa0/5 S1(config-if)#switchport access vlan 2 在S2上創建VLAN2: S2#vlan database S2(vlan)#vlan 2 name VLAN2 S2(vlan)#exit 為VLAN2分配接口: S2#conf t S2(config)#interface fa0/1 S2(config-if)#switchport access vlan 2 S2(config-if)#interface fa0/3 S2(config-if)#switchport access vlan 2 定義交換機S1的8號接口為Trunk接口: S1(config-if)#interface fa0/8 S1(config-if)#switchport mode trunk 定義交換機S2的8號接口為Trunk接口: S2(config-if)#interface fa0/8 S2(config-if)#switchport mode trunk >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 定義S1為VTP服務器,域名為jsj: S1#conf t S1(config)#vtp mode server S1(config)#vtp domain jsj 在S1上創建VLAN20、VLAN30: S1(config)#exit S1#vlan database S1(vlan)#vlan 20 name VLAN20
S1(vlan)#vlan 30 name VLAN30 S1(vlan)#exit 為VLAN30分配接口: S1#conf t S1(config)#interface fa0/3 S1(config-if)#switchport access vlan 30 S1(config-if)#interface fa0/4 S1(config-if)#switchport access vlan 30 定義S2為VTP客戶機,域名也為jsj: S2#conf t S2(config)#vtp mode client S2(config)#vtp domain jsj 為VLAN20分配接口: S2(config)#interface fa0/1 S2(config-if)#switchport access vlan 20 S2(config-if)#interface fa0/2 S2(config-if)#switchport access vlan 20 為VLAN30分配接口: S2(config-if)#interface fa0/3 S2(config-if)#switchport access vlan 30
第四篇:實驗一 實驗報告
網 絡 程 序 設 實驗報告
實驗名稱:Winsock編程接口實驗 實驗類型: 驗 證 型
計
一、實驗目的
? 掌握Winsock的啟動和初始化;
? 掌握gethostname(),gethostbyname(),GetAdaptersInfo()等信息查詢函數的使用。
二、實驗設計
實驗內容:
1、編寫程序能同時實現對多個域名的解析。比如在控制臺輸入:getip www.tmdps.cn對應的IP地址列表。
2、編寫程序獲取并輸出本地主機的所有適配器的IP地址,子網掩碼,默認網關,MAC地址。
根據實驗內容編寫程序:
1、對相關域名進行解析,利用gethostbyname()完成解析,用到的結構體為:
struct hostent{ char FAR*
h_name;char FAR* FAR* h_aliases;short
h_addrtype;short
h_length;char FAR* FAR* h_addr_list;}
得到的IP地址列表由h_addr_list存儲;
2、利用GetAdaptersInfo()函數獲得本地主機的相關信息,通過IP_ADAPTER_INFO結構體返回所需信息。
IP_ADAPTER_INFO的定義如下: typedef struct _IP_ADAPTER_INFO {
struct _IP_ADAPTER_INFO* Next;
DWORD ComboIndex;
char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];
char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];
UINT AddressLength;
BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];
DWORD Index;
UINT Type;
UINT DhcpEnabled;
PIP_ADDR_STRING CurrentIpAddress;
IP_ADDR_STRING IpAddressList;
IP_ADDR_STRING GatewayList;
IP_ADDR_STRING DhcpServer;
BOOL HaveWins;
IP_ADDR_STRING PrimaryWinsServer;
IP_ADDR_STRING SecondaryWinsServer;
time_t LeaseObtained;
time_t LeaseExpires;
} IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;
三、實驗過程(包含實驗結果)
1、分析題目,編寫程序;
2、將編寫的程序進行編譯、運行,輸入題目給定的內容,完成題目要求; 結果如下:
第1題:
第2題:
四、討論與分析
思考題:
1、Winsock初始化的作用:只有調用了WSAStartup()進行初始化之后,應用程 序才能調用其他Windows Sockets API函數,實現網絡通信;
2、函數原型為:
DWORD GetAdaptersInfo(PIP_ADAPTER_INFO pAdapterInfo,//接受數據的緩沖區
PULONG pOutBufLen
// 數據的長度大小);
3、域名解析時出現域名對應多個IP,原因:該域名存在于多個服務器。
五、實驗者自評
通過本次實驗,我掌握了Winsock的啟動和初始化以及gethostname(),gethostbyname(),GetAdaptersInfo()等函數查詢的使用,加深了以前對課本知識的認識程度。
六、附錄:關鍵代碼(給出適當注釋,可讀性高)
第1題代碼:
////////////////////////////////////////////////// // GetAllIps.cpp文件
//#include “../common/InitSock.h” #include
using namespace std;
#pragma comment(lib, “WS2_32”)// 鏈接到WS2_32.lib //CInitSock initSock;// 初始化Winsock庫
void main(){
char szMessage[256];// 取得本地主機名稱
// 初始化
WSADATA wsaData;if(WSAStartup(MAKEWORD(2,2), &wsaData)!= 0){
exit(0);}
// 通過主機名得到地址信息
printf(“ Get IP::”);gets(szMessage);
// 獲取主機信息
hostent *pHost = ::gethostbyname(szMessage);
// 打印出所有IP地址
in_addr addr;for(int i = 0;;i++){
char *p = pHost->h_addr_list[i];
if(p == NULL)
break;
memcpy(&addr.S_un.S_addr, p, pHost->h_length);
char *szIp = ::inet_ntoa(addr);
printf(“ 服務器 %s IP地址:%s n ”,szMessage, szIp);
printf(“服務器名字: %s n”,pHost->h_name);}
/////////////////////////// ::WSACleanup();
}
第2題代碼:
// 獲取并輸出本地主機的所有適配器的IP地址,子網掩碼,默認網關,MAC地址
#include
void main(){ // 定義變量
IP_ADAPTER_INFO *pAdapterInfo;ULONG ulOutBufLen;DWORD dwRetVal;PIP_ADAPTER_INFO pAdapter;
pAdapterInfo =(IP_ADAPTER_INFO *)malloc(sizeof(IP_ADAPTER_INFO));ulOutBufLen = sizeof(IP_ADAPTER_INFO);// 第一次獲取適配器信息,得到ulOutBufLen的實際大小
if(GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)!= ERROR_SUCCESS){
free(pAdapterInfo);
pAdapterInfo =(IP_ADAPTER_INFO *)malloc(ulOutBufLen);} // 第二次獲取適配器信息,獲得了pAdapterInfo信息
if(dwRetVal = GetAdaptersInfo(pAdapterInfo, &ulOutBufLen)!= ERROR_SUCCESS){
cout<<“GetAdapterInfo Error!”< // 打印MAC地址信息、子網掩碼以及網關 pAdapter = pAdapterInfo;while(pAdapter){ cout<<“MAC Address: ”; for(int i=0;i AddressLength;i++) { if(i ==(pAdapter->AddressLength-1)) { cout< } else { cout< } } cout< cout<<“IP 地址:”< IpAddressList.IpAddress.String< cout<<“子網掩碼 :”< IpAddressList.IpMask.String< cout<<“網關 :”< IpAddressList.IpAddress.String< cout<<“****************************************”< pAdapter = pAdapter->Next;} // 釋放資源 if(pAdapterInfo){ free(pAdapterInfo);} cout< } 計算機科學與工程學院 天津理工大學 計算機 科學 與工程 學院 實驗報告 2018 至 2019 學年 第 一 學期 課程名稱 程序設計(C 語言) 學號 學生姓名 班級 級 專業 計算機科學與技術(合作) 實驗地點 7-21 實驗項目 函數 實驗 時間 批改意見 成績 教師簽字: 實驗(一)) 實驗名稱 函數 開發 環境 PC 機,windows7 操作系統 開發工具 VC6.0 實驗目的(1 1)掌握函數的定義與調用的方法 ; (2 2) 參數傳遞機制、函數的嵌套調用和遞歸調用 (3 3)學會利用自定義函數進行模塊化程序設計的方法 ;的 多文件結構的 C++ 程序的編譯、調試和運行 實驗 要求 認真完成實驗內容,編寫程序代碼; 要求程序正確無誤,并輸出合理的實驗結果; 書寫并提交實驗報告。 實驗 內容(應包括實驗題目、代碼實現、編譯、運行結果等,也可給出程序的算法描述、重點程序語句的 注釋 等。 。)) 1.一個素數,當它的數字位置對換以后仍為素數,這樣的數稱為絕對素數。編寫一個程序,求出所有的兩位絕對素數。 2.寫兩個函數,分別求兩個整數的最大公約數和最小公倍數,用主函數調用這兩個函數, 并輸出結果,兩個整數由鍵盤輸入。 3.求階乘問題。要求定義函數 fact(n)計算 n!,主函數中輸入一個正整數 n,輸出 n!,要求函數 數 fact(n)分別采用遞歸和非遞歸兩種形式實現。 (1)遞歸版:主要利用遞推公式 fact(n)= n * fact(n-1),并注意終止條件。 (2)非遞歸版: 主要利用單重循環實現。 心得體會: 求方程 0 ax2+bx+c=0 的根,用三個函數分別求當 b b2 2--c4ac 大于 0 0、等于 0 0 和小于 0 0 時的根,并輸出結果。 在做這道題的時候 我遇到了問題,通過自己的思考以及與老師的交流,改正了錯誤。函數。 這部分,一開始我學的不清楚,通過不斷練習,思考,改錯,我越發理解函數,熟悉函數。第五篇:實驗六函數實驗報告