星期五, 1月 03, 2025

[CCNA] Port Security

使用 mac address 來確定該電腦是否能夠存取 switch port,該筆記內容是以只允許一個 mac address 連線來記錄

網路拓樸圖
Port Security 設定

設定 switch IP 方便進行測試
 

設定 fa0/1 為 Port Security 時,要先切換至 access 模式,要不然會拋出下圖錯誤訊息

Port Security 設定步驟
  • 設定 access 模式
  • 允許記錄一個 mac address
  • 使用 sticky 模式紀錄 mac address
  • violation 模式為 shutdown 為預設值,以該筆記來說即為紀錄第二個 mac address 時會把 Port 關閉

使用 show port security interface 來查看 Port Security 相關設定,以下圖來說,上方為設定完成後,還沒有任何連線狀態,下方為已記錄一個 mac address


show port-security 語法的 Last Source Address:Vlan 資料分別為紀錄的 mac address 和 vlan 號碼,從 PC0 截圖可以看到 mac address 是一致的

Port Security 測試

因為 switch 已經紀錄 PC0 mac address,當 Laptop0 ping siwtch 時,超過設定只允許記錄一個 mac address,該 Port 會立即 shutdown,如要在 CLI 內重啟該 Port,要先下 shutdown 後 no shutdown,直接下 no shutdown 是沒有作用的


show port-security 顯示已開啟 Port Security 的相關資訊

關閉 Port Security

使用 no switchport port-security 來關閉,關閉後必須重啟該 Port
關閉後兩台設備就同時可以通啦


確認 Port Security 已經關閉

星期三, 12月 25, 2024

[CCNA] Vlan Routing - SubInterface

延續該筆記 - [CCNA] switch 上設定 trunk,在 Router 上設定 SubInterface,讓不同 Vlan 之間可以互通,網路拓樸圖說明如下
  • 上方為 Vlan2 (192.168.20.0)、下方為 Vlan3 (192.168.30.0)
  • Router0 負責 Vlan Routing
  • Switch0、Switch1、Rounter0 彼此之間使用 Trunk 連接
Switch0 g0/1 Port 設定 Trunk 

語法如下,要注意執行 show interface trunk 語法時,router0 g0/1 Port 要先 ON 起來,線路是通的狀態下,才會顯示出 g0/1 trunk 資訊

Router 上設定 SubInterface

步驟為
  • 建立 SubInterface
  • 指定 Vlan (dot1Q 即為 802.1Q)
  • 設定 SubInterface ip
最後要把終端設備 PC 和 Laptop gateway,指定到對應的 SubInterface 去
觀察封包內的 vlan tag

從 PC0 ping Laptop0,使用 Simulation 模式在 Router0 上觀察封包
  • 在 Inbound 上可以看見 TCI vlan 2
  • Outbound TCI valn 3 


實際測試

星期三, 12月 18, 2024

[EF] ExecuteSqlCommand 呼叫 Store Procedure - Output 參數

下列筆記
都是把 Store Procedure 匯進 Entity 內去使用,該筆記紀錄直接使用 ExecuteSqlCommand 呼叫 Store Procedure 並透過 output 回傳資料

TSQL - Store Procedure

在 AdventureWorks 上建立 SP 來存取 Person.Person Table 並回傳指定資料的全名 (LastName + FirstName)
use AdventureWorks2022
go 

CREATE OR ALTER PROCEDURE uspEF_ExecuteSqlCommand_Output
(
	@BusinessEntityID int ,
	@FullName varchar(100) OUTPUT
)
AS
	BEGIN
		SELECT 
			@FullName = TRIM(LastName) + '-' + TRIM(FirstName)
		FROM Person.Person
		WHERE BusinessEntityID = @BusinessEntityID
	END

C# EF edmx 呼叫 SP
namespace EFSPOutput_ExecuteSqlCommand
{
    internal class Program
    {
        static void Main(string[] args)
        {
            AdventureWorks2022Entities dbContext = new AdventureWorks2022Entities();

            string TSQL = @"EXEC uspEF_ExecuteSqlCommand_Output @BusinessEntityID , @FullName OUTPUT";

            List<SqlParameter> parameters = new List<SqlParameter>();
            parameters.Add(new SqlParameter("@BusinessEntityID", SqlDbType.Int) { Value = 1 });

            var outputPara = new SqlParameter("@FullName", SqlDbType.VarChar, 100)
            {
                Direction = ParameterDirection.Output
            };
            parameters.Add(outputPara);

            dbContext.Database.ExecuteSqlCommand(TSQL, parameters.ToArray());

            Console.WriteLine(outputPara.Value.ToString());
        }
    }
}

星期一, 12月 09, 2024

[CCNA] switch 上設定 trunk

trunk 用途在於讓不同 switch 上的 vlan 可以互通,下圖為練習拓樸圖
終端設備為 PC 歸屬在 vlan2 內、終端設備為 Laptop 歸屬在 vlan3 內,並在 switch 上設定 trunk,讓兩台 switch 上的 vlan 彼此可以互通,主要分為三個設定步驟
  • 在 switch 上設定為 trunk
  • 在 switch 上設定 vlan 並把 port 劃進歸屬的 vlan 內
  • 在終端設備上使用 ping 來確認網路設定是否正確
下述筆記內容只記錄在 switch0 上設定截圖,switch1 也必須有相同設定

trunk

在兩台 switch 上的 fa0/1 設定 trunk
vlan

新增 vlan 2、vlan 3 並命名為 lab2、lab3
把 PC (fa0/10) 歸屬在 vlan2、Laptop (fa0/11) 歸屬在 vlan3 內
ping

確認 trunk 和 vlan 設定值
跨 switch 的同一個 vlan 彼此可以 ping 通

IDE 操作
CLI 相關語法整理
-- 把介面轉成 trunk
switchport mode trunk

-- 顯示目前設定為 trunk 的介面
show interface trunk

星期日, 12月 01, 2024

[CCNA] switch 上設定 vlan

在 switch 上設定 vlan 並記錄相關語法,下圖為簡易網路拓樸圖


CLI 語法

show vlan brief 確認 switch 上 port 所屬 vlan,vlan1 為預設值

新增 vlan 2 和 vlan 3 並更名為 lab2 和 lab3

把 switch 上的 
  • fa0/1、fa0/2 設定為 vlan2:對單一 Port 進行設定
  • fa0/3、fa0/4 設定為 vlan3:對多個 Port 進行設定

再次使用 show vlan brief 確認 vlan 設定

測試 vlan 設定
  • 從 PC0 上 ping 同為 vlan2 的 PC1 (192.169.10.2):O
  • 從 PC0 上 ping 在 vlan3 的 laptop1 (192.168.10.4):X

CLI 相關語法整理
-- 顯示 switch 上的 vlan 設定
show vlan brief

-- 新增 vlan
vlan vlan數字

-- 刪除 vlan
no vlan vlan數字

-- vlan 更名
name vlan名稱

-- 指定多個 Port
interface range PortRange (EX:fa0/3 - fa0/4)

-- 指定 Port 所屬 vlan
switchport 存取模式 (access/trunk) vlan vlan數字

IDE 操作