目前分類:電腦資訊 (15)

瀏覽方式: 標題列表 簡短摘要

蝦皮首購滿200元折100元折扣碼:SPTNV5BU (折扣碼效期到2018/09/30 23:59, 9月半夜下單還有滿299萊爾富免運費活動~要記得點蝦皮首頁->活動總覽->運費公告裡面的運費優惠券,結帳時在優惠碼的地方才能選免運費)

 

蝦皮購物shopee/折扣碼/優惠券/折價券/coupon


文章標籤

lyt0112 發表在 痞客邦 留言(1) 人氣()

蝦皮首購滿200元折100元折扣碼:MCBYNR5V (折扣碼效期到2018/08/31 23:59, 8月半夜下單還有滿299萊爾富免運費活動~要記得點蝦皮首頁->活動總覽->運費公告裡面的運費優惠券,結帳時在優惠碼的地方才能選免運費)

蝦皮首購滿200元折100元折扣碼:SPTNV5BU (折扣碼效期到2018/09/30 23:59, 9月半夜下單還有滿299萊爾富免運費活動~要記得點蝦皮首頁->活動總覽->運費公告裡面的運費優惠券,結帳時在優惠碼的地方才能選免運費)

 

蝦皮購物shopee/折扣碼/優惠券/折價券/coupon


文章標籤

lyt0112 發表在 痞客邦 留言(1) 人氣()

新版本 gcc 編譯包含 __DATE__ 或者 __TIME__ 程式碼時,可能會報下面的錯誤:

  1. error: macro "__DATE__" might prevent reproducible builds
  2. error: macro "__TIME__" might prevent reproducible builds

解決辦法為增加 EXTRA_CFLAGS 參數為:-Wno-error=date-time(報警但不報錯) 或者 -Wno-date-time(不報警)。


文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

重點:

系統不能啟動

試試kernel參數」acpi=off」,如果此參數沒有帶來任何改變,那麼這不是一個ACPI bug。反之,則這很可能是一個ACPI bug。 確定了是一個ACPI bug後,我們還有其他一些參數來更進一步的區分到底是ACPI哪個部分的bug。

acpi=ht

這個參數和"acpi=off"幾乎一樣,它禁止了除多處理器配置相關的內容以外的所有ACPI功能。如果acpi=off正常,但acpi=ht 不正常, 則解析ACPI 表或者Linux SMP的代碼有bug.

pci=noacpi

禁止使用ACPI來處理任何PCI相關的內容,包括PCI root bus的枚舉和PCI設備中斷路由。

acpi=noirq

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

iptables是在linux內核裡配置防火牆規則的用戶空間工具,它實際上是netfilter框架的一部分.可能因為iptables是netfilter框架裡最常見的部分,所以這個框架通常被稱為iptables,iptables是linux從2.4版本引入的防火牆解決方案.

ipset是iptables的擴展,它允許你創建 匹配整個地址sets(地址集合) 的規則。而不像普通的iptables鏈是線性的存儲和過濾,ip集合存儲在帶索引的數據結構中,這種結構即時集合比較大也可以進行高效的查找.

除了一些常用的情況,比如阻止一些危險主機訪問本機,從而減少系統資源佔用或網絡擁塞,IPsets也具備一些新防火牆設計方法,並簡化了配置.

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

使用 iptables 封 IP,是一種比較簡單的應對網絡攻擊的方式,也算是比較常見。有時候可能會封禁成千上萬個 IP,如果添加成千上萬條規則,在一台注重性能的服務器或者本身性能就很差的設備上,這就是個問題了。ipset 就是為了避免這個問題而生的。

關於 iptables,要知道這兩點。

  • iptables 包含幾個表,每個表由鏈組成。默認的是 filter 表,最常用的也是 filter 表,另一個比較常用的是 nat 表。一般封 IP 就是在 filter 表的 INPUT 鏈添加規則。
  • 在進行規則匹配時,是從規則列表中從頭到尾一條一條進行匹配。

這像是在鏈表中搜索指定節點費力。ipset 提供了把這個 O(n) 的操作變成 O(1) 的方法:就是把要處理的 IP 放進一個集合,對這個集合設置一條 iptables 規則。像 iptable 一樣,IP sets 是 Linux 內核中的東西,ipset 這個命令是對它進行操作的一個工具。

簡單的流程

可以用這幾條命令概括使用 ipset 和 iptables 進行 IP 封禁的流程

ipset create vader hash:ip  
iptables -I INPUT -m set --match-set vader src -j DROP  
ipset add vader 4.5.6.7  
ipset add vader 1.2.3.4  
ipset add vader ...  
ipset list vader # 查看 vader 集合的內容  

下面分別對各條命令進行描述。

lyt0112 發表在 痞客邦 留言(0) 人氣()

Linux 信號signal處理機制

 
 
      信號機制是進程之間相互傳遞消息的一種方法,信號全稱為軟中斷信號,也有人稱作軟中斷。從它的命名可以看出,它的實質和使用很象中斷。所以,信號可以說是進程控制的一部分。
        一、信號的基本概念
            1、基本概念
文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

[root@192 ~]# cat ./test
#! /bin/bash
A="a b c d"
B="c d e f"
C=${A}"---"${B}

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

LINUX內核中Netfilter Hook的使用 作者:JuKevin

 
HookLinux Netfilter中重要技術,使用hook可以輕鬆開發內核下的多種網絡處理程序。下面簡單介紹一下hook及其使用。
1.      hook相關數據結構
 
文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

Linux netfilter源碼分析(1)

  • IP報文的接收到hook函數的調用

1.1  ip_input.c    ip_rcv()函數

以接收到的報文為例,類似的還有ip_forward(ip_forward.c)ip_output(ip_output.c)

int ip_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev)
{

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

 

 

TUN 設備

TUN 設備是一種虛擬網絡設備,通過此設備,程序可以方便得模擬網絡行為。先來看看物理設備是如何工作的:

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

string模組是Netfilter/iptables提供的一個字串比對模組,使用者可用來比對Layer7應用層上任何的字串,

本文就是利用此模組來比對HTTP通訊協定上的字串以達到限制網站存取的目的,所提供的參數如下所示:

--from:從那個位元處開始比對。
--to:從那個位元處結束比對。

lyt0112 發表在 痞客邦 留言(0) 人氣()

iptables四個表與五個鏈間的處理關係

netfilter/iptables IP 信息包過濾系統是一種功能強大的工具,可用於添加、編輯和除去規則,這些規則是在做信息包過濾決定時,防火牆所遵循和組成的規則。這些規則存儲在專用的信息包過濾表中,而這些表集成在 Linux 內核中。在信息包過濾表中,規則被分組放在我們所謂的鏈(chain)中。

      雖然 netfilter/iptables IP 信息包過濾系統被稱為單個實體,但它實際上由兩個組件 netfilter 和 iptables 組成。

      netfilter 組件也稱為內核空間(kernelspace),是內核的一部分,由一些信息包過濾表組成,這些表包含內核用來控制信息包過濾處理的規則集。

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

arp_announce和arp_ignore這兩個參數,顧名思義arp_announce和arp_ignore是和ARP協議(Address Resolution Protocal,地址解釋協議)有關的。

arp_announce參數是定義linux主機發送ARP請求數據包時如何選擇數據包中使用的發送方IP地址(即Sender IP address)。在系統準備通過網卡發送一個IP數據包前,該IP數據包的源IP地址和目標IP地址通常是已經知道的,同時發送的網卡也已經確定,那數據鏈路層的源MAC地址當然也確定了,最後剩下的就是確定數據鏈路層的目標MAC地址了,而該目標MAC地址就需要通過ARP地址解釋協議來獲取,於是系統首先需要發送ARP請求數據包獲取目標MAC地址。結合上面關於ARP原理的描述,我們知道,發送ARP請求數據包時需要包含發送方IP地址,該IP地址應該是什麼呢?大家可能想當然的以為就是要發送的IP數據包的源IP地址,其實這個是不一定的,尤其是主機有多個網絡接口和IP地址時,而arp_announce正是控制該發送方IP地址的選擇條件的。arp_announce參數的取值分別是0、1、2,這些取值的意義如下:
0(默認值)-- 允許使用任一網絡接口配置的IP地址(即任一本地地址),通常就是待發送的IP數據包的源IP地址。
1 -- 盡量避免使用不屬於該網絡接口(即發送數據包的網絡接口)子網的本地地址作為發送方IP地址。根據我對官方原文的理解,就是說如果主機包含多個子網,而IP數據包的源IP地址屬於其中一個子網,雖然該IP地址不屬於本網口的子網,但是也可以作為ARP請求數據包的發送方IP地址,否則就會按照取值為2的方式選擇發送方IP地址。
2 -- 忽略IP數據包的源IP地址,總是選擇網口所配置的最合適的IP地址作為ARP請求數據包的發送方IP地址(一個網口可能會配置多個IP地址)。

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

macvlan 簡介

macvlan 是 linux kernel 比較新的特性,可以通過以下方法判斷當前系統是否支持:

$ modprobe macvlan
$ lsmod | grep macvlan
  macvlan    19046    0

如果第一個命令報錯,或者第二個命令沒有返回,則說明當前系統不支持 macvlan,需要升級系統或者升級內核。

macvlan 允許你在主機的一個網絡接口上配置多個虛擬的網絡接口,這些網絡 interface 有自己獨立的 mac 地址,也可以配置上 ip 地址進行通信。macvlan 下的虛擬機或者容器網絡和主機在同一個網段中,共享同一個廣播域。macvlan 和 bridge 比較相似,但因為它省去了 bridge 的存在,所以配置和調試起來比較簡單,而且效率也相對高。除此之外,macvlan 自身也完美支持 VLAN。

如果希望容器或者虛擬機放在主機相同的網絡中,享受已經存在網絡棧的各種優勢,可以考慮 macvlan。

文章標籤

lyt0112 發表在 痞客邦 留言(0) 人氣()

Close

您尚未登入,將以訪客身份留言。亦可以上方服務帳號登入留言

請輸入暱稱 ( 最多顯示 6 個中文字元 )

請輸入標題 ( 最多顯示 9 個中文字元 )

請輸入內容 ( 最多 140 個中文字元 )

reload

請輸入左方認證碼:

看不懂,換張圖

請輸入驗證碼