Mandelbrot集Julia集分形的MATLAB实现(分形艺术)

article/2025/9/15 18:18:34

Mandelbrot集Julia集分形的MATLAB实现(分形艺术)

  • 1 简单Julia集的实现
    • 1.1 如何实现更光滑的展示效果?
  • 2 Mandelbrot集的实现
  • 3 永恒的细节

本文首发于 matlab爱好者 微信公众号,欢迎关注。

惯例声明:本人没有相关的工程应用经验,只是纯粹对相关算法感兴趣才写此博客。所以如果有错误,欢迎在评论区指正,不胜感激。本文主要关注于算法的实现,对于实际应用等问题本人没有任何经验,所以也不再涉及。

本文为学习非线性动力学时,搜索资料时发现的一个小例子,感觉很有趣,试着自己尝试一下。相关实现案例非常多,所以这篇文章就简单水一下了。
其余两篇水文链接也一并奉上:
利用matlab进行混沌摆仿真(双摆、三摆、多摆演示)https://blog.csdn.net/weixin_42943114/article/details/121891553
利用matlab实现复数域空间牛顿迭代法的分形图案展示(newton法)https://blog.csdn.net/weixin_42943114/article/details/121905957

参考目录:
[1]GPU Code Generation: The Mandelbrot Set(https://www.mathworks.com/help/gpucoder/gs/gpu-code-generation-the-mandelbrot-set.html)
[2]神奇的分形艺术(四):Julia集和Mandelbrot集(http://www.matrix67.com/blog/archives/292)

1 简单Julia集的实现

对于复平面上某个点z,经过函数z=f(z)的不断迭代,会有两种结局:收敛或发散。

当我们取函数f(z)=z^2+C,对整个平面每个点,都经过上述多次迭代后,记录其收敛或发散的情况,并标记在图上,最终形成的图案就是Julia集。C不一定是实数,也可以是复数。

这里我用matlab简单写了一个当C=0.279的图像:
请添加图片描述
这里的颜色条我借鉴的是Matrix67博客里引用的一个图片的颜色条,自己搭配的,见神奇的分形艺术(四):Julia集和Mandelbrot集。

程序算法参见matlab官方的一个介绍gpu加速的文章中GPU Code Generation: The Mandelbrot Set提到的一种算法。

程序如下:

%?res是目标分辨率,iter是循环次数,(xc,yc)是图像中心,xoom是放大倍数
%res分辨率越多,在一张图上能够计算的点越多。iter越多,细节越丰富。
clear;
clc
close all
res=2500;iter=200;xc=0;yc=0;xoom=1.7;x0=xc-2/xoom;x1=xc+2/xoom;
y0=yc-2/xoom;y1=yc+2/xoom;
x=linspace(x0,x1,res);
y=linspace(y0,y1,res);
[xx,yy]=meshgrid(x,y);
z=xx+yy*1i;C=0.279;
tic%matlab官方推荐的方法
N = ones(res,res);
for k = 0:iterz = z.*z + C;inside = abs( z )<=2;N = N + inside;
end
toc%这里代码参见博客:
%利用matlab构建自己的colormap(色彩搭配)
%https://blog.csdn.net/weixin_42943114/article/details/81811556
%蓝色-橘色颜色条
mycolorpoint=[[235 255 255];...[243 253 242];...[248 247 193];...[255 211 49];...[236 133 0];...[134 36 21];...[75 6 34];...[15 5 64];...[3 8 96];...[7 35 154];...[24 84 205];...[87 169 229];...[165 223 247];...[235 255 255];...];
mycolorposition=[1 3 7 14 27 45 57 66 74 86 96 109 119 128];
mycolormap_r=interp1(mycolorposition,mycolorpoint(:,1),1:128,'pchip','extrap');
mycolormap_g=interp1(mycolorposition,mycolorpoint(:,2),1:128,'pchip','extrap');
mycolormap_b=interp1(mycolorposition,mycolorpoint(:,3),1:128,'pchip','extrap');
mycolor=[mycolormap_r',mycolormap_g',mycolormap_b']/255;figure()
pcolor(x,y,log(N));
mycolor=interp1(linspace(1,256,128),mycolor,1:256);
colormap([mycolor;mycolor;mycolor])%重复颜色条
shading interp

1.1 如何实现更光滑的展示效果?

我在网上查阅资料,发现大部分资料就到此为止了。虽然输出的图片的确像回事,但是它是一个台阶一个台阶的,距离想象中的光滑过度变化有很大差别。
请添加图片描述
这个台阶产生的原因是算法本身,算法用整数去衡量该点发散的快与慢。因此只要算法不更改,整数导致的台阶问题无法消除。所以只能从其他角度去消除这个台阶。

因此我这一小节也提出了一个小改进算法,能够二次加工分形图,去除台阶。之前用过各种滤波法,但是效果不好,因为分形图具有特别多的细节,直接滤波会导致分形图的细节全部丢失。所以后来采用了提取等值线边缘提取的思路,来保持图像形状,再进行光滑插值的方法。效果如下:
请添加图片描述

可以看到基本保留了大部分分形细节,而且过渡也比较光滑。边缘部分受插值信息限制,可能过渡受边框影响,有些不自然。当然缺点也比较明显,就是我这个轮廓选择原则是逐个像素4个边来决定的,所以计算量非常大。因为之前试过M = contour()函数提取等高线,效果似乎差不多,喜欢折腾的可以在这里再研究一下,看看像Ultra Fractal 之类的分形软件是怎么实现这种效果的。

完整代码如下:

%?res是目标分辨率,iter是循环次数,(xc,yc)是图像中心,xoom是放大倍数
%res分辨率越多,在一张图上能够计算的点越多。iter越多,细节越丰富。
clear;
clc
close all
res=2500;iter=200;xc=0;yc=0;xoom=1.7;x0=xc-2/xoom;x1=xc+2/xoom;
y0=yc-2/xoom;y1=yc+2/xoom;
x=linspace(x0,x1,res);
y=linspace(y0,y1,res);
[xx,yy]=meshgrid(x,y);
z=xx+yy*1i;
C=0.279;
tic%matlab官方推荐
N = ones(res,res);
for k = 0:iterz = z.*z + C;inside = abs( z )<=2;N = N + inside;
end
tocmycolorpoint=[[235 255 255];[243 253 242];[248 247 193];[255 211 49];...[236 133 0];[134 36 21];[75 6 34];[15 5 64];...[3 8 96];[7 35 154];[24 84 205];[87 169 229];...[165 223 247];[235 255 255]; ];
mycolorposition=[1 3 7 14 27 45 57 66 74 86 96 109 119 128];
mycolormap_r=interp1(mycolorposition,mycolorpoint(:,1),1:128,'pchip','extrap');
mycolormap_g=interp1(mycolorposition,mycolorpoint(:,2),1:128,'pchip','extrap');
mycolormap_b=interp1(mycolorposition,mycolorpoint(:,3),1:128,'pchip','extrap');
mycolor=[mycolormap_r',mycolormap_g',mycolormap_b']/255;%输出
figure()
pcolor(x,y,log(N));
mycolor=interp1(linspace(1,256,128),mycolor,1:256);
colormap([mycolor;mycolor;mycolor])
shading interp%二次光滑
Nq=LowPrecision2High(N);
figure()
pcolor(x,y,log(Nq));
colormap([mycolor;mycolor;mycolor])
shading interpfunction Zq=LowPrecision2High(Z)
%对阶梯数据进行平滑
[Nx,Ny]=size(Z);
[X,Y]=meshgrid(1:Nx,1:Ny);
XP=[];YP=[];ZP=[];
for kx=1:(Nx-1)for ky=1:(Ny-1)if Z(kx,ky)~=Z(kx,ky+1)x_t=0.5*(X(kx,ky)+X(kx,ky+1));y_t=0.5*(Y(kx,ky)+Y(kx,ky+1));z_t=0.5*(Z(kx,ky)+Z(kx,ky+1));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];endif Z(kx,ky)~=Z(kx+1,ky)x_t=0.5*(X(kx,ky)+X(kx+1,ky));y_t=0.5*(Y(kx,ky)+Y(kx+1,ky));z_t=0.5*(Z(kx,ky)+Z(kx+1,ky));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];endend
end
%边界值
for kx=1:NxXP=[XP;X(kx,1)];  YP=[YP;Y(kx,1)];  ZP=[ZP;Z(kx,1)];XP=[XP;X(kx,end)];YP=[YP;Y(kx,end)];ZP=[ZP;Z(kx,end)];
end
for ky=2:Ny-1XP=[XP;X(1,ky)];  YP=[YP;Y(1,ky)];  ZP=[ZP;Z(1,ky)];XP=[XP;X(end,ky)];YP=[YP;Y(end,ky)];ZP=[ZP;Z(end,ky)];
end
Zq=griddata(XP,YP,ZP,X,Y,'natural');%'v4'最好,但是速度最慢。实在不行用linear,快一点但不好看。
end

2 Mandelbrot集的实现

Mandelbrot集的求解方法和Julia集类似,就是方程不一样,它不再是常数C,而是把C替换成了z0。
f ( z ) = z 2 + z 0 f(z)=z^2+z_0 f(z)=z2+z0
这里z0代表初始迭代的点坐标。
结果如下:
请添加图片描述
代码如下:

%?res是目标分辨率,iter是循环次数,(xc,yc)是图像中心,xoom是放大倍数
%res分辨率越多,在一张图上能够计算的点越多。iter越多,细节越丰富。
clear;
clc
close all
res=1024;iter=100;xc=-0.5;yc=0;xoom=1;%这个可以自己调试,用来观察细节x0=xc-2/xoom;x1=xc+2/xoom;
y0=yc-2/xoom;y1=yc+2/xoom;
x=linspace(x0,x1,res);
y=linspace(y0,y1,res);
[xx,yy]=meshgrid(x,y);
z=xx+yy*1i;
C=z;
tic%matlab官方推荐
N = ones(res,res);
for k = 0:iterz = z.*z + C;inside = abs( z )<=2;N = N + inside;
end
tocmycolorpoint=[[235 255 255];[243 253 242];[248 247 193];[255 211 49];...[236 133 0];[134 36 21];[75 6 34];[15 5 64];...[3 8 96];[7 35 154];[24 84 205];[87 169 229];...[165 223 247];[235 255 255]; ];
mycolorposition=[1 3 7 14 27 45 57 66 74 86 96 109 119 128];
mycolormap_r=interp1(mycolorposition,mycolorpoint(:,1),1:128,'pchip','extrap');
mycolormap_g=interp1(mycolorposition,mycolorpoint(:,2),1:128,'pchip','extrap');
mycolormap_b=interp1(mycolorposition,mycolorpoint(:,3),1:128,'pchip','extrap');
mycolor=[mycolormap_r',mycolormap_g',mycolormap_b']/255;%输出
figure()
pcolor(x,y,log(N));
mycolor=interp1(linspace(1,256,128),mycolor,1:256);
colormap([mycolor;mycolor;mycolor])
shading interp%二次光滑
Nq=LowPrecision2High(N);
figure()
pcolor(x,y,log(Nq));
colormap([mycolor;mycolor;mycolor])
shading interpfunction Zq=LowPrecision2High(Z)
%对阶梯数据进行平滑
[Nx,Ny]=size(Z);
[X,Y]=meshgrid(1:Nx,1:Ny);
XP=[];YP=[];ZP=[];
for kx=1:(Nx-1)for ky=1:(Ny-1)if Z(kx,ky)~=Z(kx,ky+1)x_t=0.5*(X(kx,ky)+X(kx,ky+1));y_t=0.5*(Y(kx,ky)+Y(kx,ky+1));z_t=0.5*(Z(kx,ky)+Z(kx,ky+1));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];endif Z(kx,ky)~=Z(kx+1,ky)x_t=0.5*(X(kx,ky)+X(kx+1,ky));y_t=0.5*(Y(kx,ky)+Y(kx+1,ky));z_t=0.5*(Z(kx,ky)+Z(kx+1,ky));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];endend
end
%边界值
for kx=1:NxXP=[XP;X(kx,1)];  YP=[YP;Y(kx,1)];  ZP=[ZP;Z(kx,1)];XP=[XP;X(kx,end)];YP=[YP;Y(kx,end)];ZP=[ZP;Z(kx,end)];
end
for ky=2:Ny-1XP=[XP;X(1,ky)];  YP=[YP;Y(1,ky)];  ZP=[ZP;Z(1,ky)];XP=[XP;X(end,ky)];YP=[YP;Y(end,ky)];ZP=[ZP;Z(end,ky)];
end
Zq=griddata(XP,YP,ZP,X,Y,'natural');%'v4'最好,但是速度最慢。实在不行用linear,快一点但不好看。
end

3 永恒的细节

分形图案最有意思的,在于其看似有规律却又不可描述的图像,以及无穷无尽直至永恒的细节。

我们以Mandelbort集为例,在上一节的程序里,只需要变动xc=-0.5;yc=0;xoom=1;这几个数,便可以改变镜头的中心位置和放大倍数。
现在将(-0.912,-0.2611)这一点放大,可以得到:
请添加图片描述
可以看到放大图像之后,细节并没有减少,反而更多的细节被展示出来,跳到面前,用精巧的结构引诱人们进一步的放大图像。它的图像最有规律,每一处都透露着美感;它的图像又毫无规律,无法用现有的数学语言去描述。它的方程非常简单,但它产生的结构又非常复杂。

最后用一个动图来展示其魅力(扫兴的是gif图片上传有大小限制,所以只能压缩到渣画质,分割为两个图上传了,非常道歉)

请添加图片描述

第二个图,接上一个:

请添加图片描述
下面放代码:

%Mandelbrot
%http://www.matrix67.com/blog/archives/292
%?res是目标分辨率,iter是循环次数,(xc,yc)是图像中心,xoom是放大倍数
clear;
res=512;iter=200;xc=-0.748766710846959;yc=-0.123640847970064;mycolorpoint=[[235 255 255];[243 253 242];[248 247 193];[255 211 49];...[236 133 0];[134 36 21];[75 6 34];[15 5 64];...[3 8 96];[7 35 154];[24 84 205];[87 169 229];...[165 223 247];[235 255 255]; ];
mycolorposition=[1 3 7 14 27 45 57 66 74 86 96 109 119 128];
mycolormap_r=interp1(mycolorposition,mycolorpoint(:,1),1:128,'pchip','extrap');
mycolormap_g=interp1(mycolorposition,mycolorpoint(:,2),1:128,'pchip','extrap');
mycolormap_b=interp1(mycolorposition,mycolorpoint(:,3),1:128,'pchip','extrap');
mycolor=[mycolormap_r',mycolormap_g',mycolormap_b']/255;
mycolor=interp1(linspace(1,256,128),mycolor,1:256);
colormap([mycolor;mycolor;mycolor])GIF=2;%第二段动画
for m=(1+46*GIF):46*(GIF+1)xoom=1.2^m;%xoom=6.503637847981780e+08;x0=xc-2/xoom;x1=xc+2/xoom;y0=yc-2/xoom;y1=yc+2/xoom;x=linspace(x0,x1,res);y=linspace(y0,y1,res);[xx,yy]=meshgrid(x,y);z=xx+yy*1i;C=z;%matlab官方推荐N = ones(res,res);for k = 0:iterz = z.*z + C;inside = abs( z )<=2;N = N + inside;endNq=LowPrecision2High(N);figure(1)clfpcolor(x,y,log(Nq));shading interpcolormap([mycolor;mycolor;mycolor])caxis([0,log(iter+2)])%生成gif图pause(0.1)F=getframe(gca);I=frame2im(F);[I,map]=rgb2ind(I,256);if m == (1+46*GIF)imwrite(I,map,'test.gif','gif','Loopcount',inf,'DelayTime',0.2);elseimwrite(I,map,'test.gif','gif','WriteMode','append','DelayTime',0.2);end
endfunction Zq=LowPrecision2High(Z)
[Nx,Ny]=size(Z);
[X,Y]=meshgrid(1:Nx,1:Ny);
XP=[];YP=[];ZP=[];
for kx=1:(Nx-1)for ky=1:(Ny-1)if Z(kx,ky)~=Z(kx,ky+1)x_t=0.5*(X(kx,ky)+X(kx,ky+1));y_t=0.5*(Y(kx,ky)+Y(kx,ky+1));z_t=0.5*(Z(kx,ky)+Z(kx,ky+1));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];endif Z(kx,ky)~=Z(kx+1,ky)x_t=0.5*(X(kx,ky)+X(kx+1,ky));y_t=0.5*(Y(kx,ky)+Y(kx+1,ky));z_t=0.5*(Z(kx,ky)+Z(kx+1,ky));XP=[XP;x_t];YP=[YP;y_t];ZP=[ZP;z_t];%pause(0.1)endend
end
%边界值
for kx=1:NxXP=[XP;X(kx,1)];  YP=[YP;Y(kx,1)];  ZP=[ZP;Z(kx,1)];XP=[XP;X(kx,end)];YP=[YP;Y(kx,end)];ZP=[ZP;Z(kx,end)];
end
for ky=2:Ny-1XP=[XP;X(1,ky)];  YP=[YP;Y(1,ky)];  ZP=[ZP;Z(1,ky)];XP=[XP;X(end,ky)];YP=[YP;Y(end,ky)];ZP=[ZP;Z(end,ky)];
end
Zq=griddata(XP,YP,ZP,X,Y,'natural');%'v4'最好,实在不行用linear
end

http://chatgpt.dhexx.cn/article/Jr0pZDcL.shtml

相关文章

神奇的分形艺术: Mandelbrot集和Julia集

前言 这段时间看了一个关于维度的视频介绍&#xff0c;叹于其惊艳的多维几何体和分形的视觉动画效果。其实关于分形&#xff0c;已经有很成熟的分形软件和应用场景&#xff0c;可以参看目前流行的分形软件一览&#xff0c;不过没有及时更新&#xff0c;有些链接已经进不了&…

MATLAB | 分形的艺术——(Mandelbrot)曼德勃罗特集合

PART.0 Mandelbrot 介绍 “无规则的碎片” “魔鬼的聚合物” “上帝的指纹” Mandelbrot集合有着多种称谓&#xff0c;那么什么是曼德勃罗特集&#xff1f;Mandelbrot集合可以用复二次多项式&#xff1a; f c ( z ) z 2 c f_c(z)z^2c fc​(z)z2c 来表示&#xff0c;其中c是…

神奇的Python-实现曼德布洛特(Mandelbrot)集合(一行代码,matplotlib numpy,tensorflow)分别实现

神奇的Python-实现曼德布洛特(Mandelbrot)集合(一行代码&#xff0c;matplotlib numpy&#xff0c;tensorflow)分别实现 Mandelbrot图实际上是由Mandelbrot集合构成的图像。 Mandelbrot集合的定义如下&#xff1a; z n 1 z n 2 c z_{n1}z^2_nc zn1​zn2​c 其中&#xff…

曼德勃罗集(Mandelbrot Set)

先来膜拜一下大神&#xff01; 曼德勃罗(Benoit B. Mandelbrot)&#xff0c;数学家、经济学家&#xff0c;分形理论的创始人。1924年生于波兰华沙&#xff1b;1936年随全家移居法国巴黎&#xff0c;在那里经历了动荡的二战时期&#xff1b;1948年在帕萨迪纳获得航空硕士学位&am…

用matlab画Mandelbrot(曼德布罗特)图

Mandelbrot图实际上是由Mandelbrot集合构成的图像。 Mandelbrot集合的定义如下&#xff1a; zn1z2nc 其中&#xff0c;c是一个复数。加入给定一个复数 z0 &#xff0c;比如 z00 &#xff0c;那么这个递推式会生成一个序列&#xff1a; [z0,z1,z2,z3,...] 。如果这个序列收敛…

Mandelbrot 并行实现

最近要交并行计算的作业了,这周终于把作业写了个大概,这期间感觉学了不少东西,总结一下。 Mandelbrot Set 背景 前几天逛维基百科的时候看到了如下的消息:著名数学家、分形之父Benot B. Mandelbrot(中文名本华曼德博)美国时间10月15日辞世,享年85岁。 “1979年,在哈…

Mastering Qt 5 学习笔记-Mandelbrot

是一个 Mandelbrot 分形的多线程计算。 用户将看到分形&#xff0c;并能够在该窗口中平移和缩放。Mandelbrot 分形是一个处理复数 (a bi) 的数值集&#xff0c;该图像中的每个黑色像素都趋向于发散到一个无限值&#xff0c;&#xff0c;而绿色像素则有界于一个有限值。绿色像素…

Mandelbrot集合及其渲染

什么是Mandelbrot集合&#xff1f; Mandelbrot集合是在复数平面上组成分形的点的集合&#xff0c;它正是以数学家Mandelbrot命名。 Mandelbrot集合可以用复二次多项式\[ f_c(z)z^2c \] 来定义 其中c是一个复数。对于每一个c&#xff0c;从\(z 0\),开始对\(f_c(z)\)进行迭代。 …

分形之父 Mandelbrot

著名数学家&#xff0c;被誉为分形之父的Mandelbrot先生&#xff0c;美国时间10月15日在马萨诸塞州剑桥辞世&#xff0c;享年85岁。他用“美丽”改变了我们的世界观&#xff0c;他被认为是20世纪后半叶少有的影响深远而且广泛的科学伟人之一&#xff0c;1993年他获得沃尔夫物理…

Ettercap系列 II:基于命令行界面(结合driftnet截获目标机器正在浏览的图片)

相信跟着这个系列走&#xff0c;一直看到这篇文章的读者已经了解了基于图形化Ettercap的操作&#xff0c;并对Arp欺骗和Ettercap相关的术语有所了解。本篇就如何在命令行界面下操作ettercap&#xff0c;以实现与图形化界面相同的效果展开讨论。可能你会不解&#xff1a;既然我已…

无线局域网的嗅探攻击和防御——ettercap+driftnet

&#xfeff;&#xfeff; 无线局域网的嗅探攻击和防御 -----ettercapdriftnet 1 实验要求和目的 ●了解局域网转发数据的规则与协议 ●了解抓包软件的原理与操作流程 ●对网络中数据传输的协议有更深层次的认识 2 实验原理和背景知识 2.1 抓包软件与分析软件 本次嗅探试验所…

python实现图片嗅探工具——自编driftnet

python实现图片嗅探工具——自编driftnet 前言一、数据包嗅探二、图片捕获三、图片显示及主函数写在最后 前言 想必尝试过中间人攻击&#xff08;MITM)的小伙伴&#xff0c;大概率是知道driftnet的。这是一款简单使用的图片捕获工具&#xff0c;可以很方便的从网络数据包中抓取…

kali中 arpspoof、driftnet、流量转发的图片抓取

1、开启内核转发模式&#xff08;echo 1为转发 echo 0为拦截&#xff09; echo 1 /proc/sys/net/ipv4/ip_forward 配置完成使用命令查看cat /proc/sys/net/ipv4/ip_forward 2、使用 Arpspoof 开始攻击 命令:Arpspoof -i (自己网卡) -t 目标IP 网关 3、打开另一个终端 查看dri…

ARP欺骗攻击(流量图片)——dsniff与driftnet使用

ARP欺骗攻击&#xff08;流量&图片&#xff09; 原理&#xff1a; 首先我们![请添加图片描述](https://img-blog.csdnimg.cn/7de7923387224bcda1ea4be958032ae9.png 要明白何为ARP&#xff08;地址解析协议&#xff09;&#xff1a;是根据 IP地址 获取 物理地址 的一个 TC…

NO.26——利用ettercap和driftnet截获数据流里的图片

原理 Ettercap最初设计为交换网上的sniffer&#xff0c;但是随着发展&#xff0c;它获得了越来越多的功能&#xff0c;成为一款有效的、灵活的中介攻击工具。它支持主动及被动的协议解析并包含了许多网络和主机特性&#xff08;如OS指纹等&#xff09;分析。 Ettercap…

linux嗅探器抓包,Kali Linux 嗅探/欺骗工具 driftnet 教程

日期:2018年01月11日 观看: 13,491 C 次 Driftnet是一个监听网络流量并从它观察到的TCP流中提取图像的程序。有趣的是看到很多网络流量的主机上运行。在实验性增强中,driftnet现在从网络流量中挑选出MPEG音频流,并尝试播放它们。 Driftnet是一款从网络流量捕获图像并将其显…

ARP中使用driftnet工具捕获图片

在进行任何网络攻防实验时&#xff0c;请务必遵守当地法律法规以及道德准则&#xff0c;必须遵守法律规定&#xff0c;只能在合法授权的情况下进行实验和演练。 预备知识 基本网络概念&#xff1a;了解TCP/IP协议、IP地址、MAC地址等基本网络概念。 ARP协议&#xff1a;了解A…

使用Arp欺骗与driftnet工具监听局域网信息

【重点声明】此系列仅用于工作和学习&#xff0c;禁止用于非法攻击&#xff0c;非法传播。一切遵守《网络安全法》 环境&#xff1a; Ubuntu 16.0.4攻击主机&#xff1a;192.168.1.130&#xff0c;Windows10 目标机&#xff1a;192.168.1.219 扫描该网段存活的主机&#xff1…

(arpspoof + driftnet)实现arp欺骗

(arpspoof driftnet)实现arp欺骗 虚拟机环境&#xff1a;kali linux window 7 文章目录 (arpspoof driftnet)实现arp欺骗前言一、安装arpspoof和driftnet二、Attack1.信息收集2.MAC欺骗与流量截图 总结 前言 ARP欺骗&#xff1a;欺骗局域网内主机的网关MAC地址&#xff0c…

自举电路介绍

自举电路也叫升压电路&#xff0c;利用自举升压二极管,自举升压电容等电子元件&#xff0c;使电容放电电压和电源电压叠加&#xff0c;从而使电压升高&#xff0e;有的电路升高的电压能达到数倍电源电压。 升压电路原理 举个简单的例子&#xff1a;有一个12V的电路&#xff0c…