Linux命令Man解释:PPPD :点对点daemon协议

摘要:
pppd提供基本的LCP,验证的支援,以及一个用来建立并配置网际网路协定的NCP。asyncmap把非同步字元设为对照到。这个选项在BSD或是Ultrix系统上目前并没有实作出来。disconnect在pppd已经终结该连线之後执行以所指定的可执行指令或是shell指令。-mn关避魔术数字协商。-mru关闭MRU[MaximumReceiveUnit最大接收单元]协商。)+ua若彼端要求的话同意使用PAP[PasswordAuthenticationProtocol密码验证协定]来验证,并使用在档案中的使用者以及密码资料来传送给彼端。-vj关掉VanJacobson式的IP表头压缩协商。

名称
pppd-点对点协定隐形程式
(PointtoPointProtocoldaemon)
语法
pppd[选项][终端设备名称(tty_name)][速率]
描述
这个点对点协定(PPP)提供一种在点对点串列线路上传输资料流
(datagrams)的方法。PPP是由三个部份所组成的:一个在串列线
路上封装(encapsulating)资料流的方法,一个可延伸的连结控制
协定(LinkControlProtocol:LCP),以及一些用来建立并配置不
同网路层协定的网路控制协定(NetworkControlProtocols:NCP)
封装的机制(scheme)是由核心中的驱动程式码来提供。pppd提供
基本的LCP,验证(authentication)的支援,以及一个用来建立
并配置网际网路协定(InternatProtocol(IP))(叫做IP控制
协定,IPCP)的NCP。
常用选项
在该名称的设备上进行通讯。如果需要的话可以前置一个
"/dev/"字串。如果没有给设备名称,pppd将会使用控制
台的终端机(controllingteriminal),并且产生(fork)出
来时将不会把自己放到背景去。
将鲍率设为。在像是4.4BSD以及NetBSA的系
统上,可以指定任何速率。其他系统(e.g.SunOs)只允
许有限的几种速率。
asyncmap
把非同步(async)字元设为对照到。这个对照表
描述哪些控制字元不能在串列线路上成功地接收。pppd将
会要求彼端以两个位元组的逸出序列(escapesequence)来
传送这些字元。其参数是32位元的十六进位数字而每个
位元代表一个得避开(escape)的字元。位元0(00000001)
代表字元0x00;位元31(80000000)代表字元0x1f或
是^_。如果给了多个asyncmap选项,这些数值会以逻
辑的或(OR)合在一起。如果没有给asyncmap选项,将没
有非同步字元对照表会被加以协商来导引接收。这样彼端
将会避开所有的控制字元。
auth要求彼端在允许传送或接收网路封包之前先验证它自己。
connect
使用以所指定的可执行指令或是shell指令来设定
串列线路。这个指令稿一般会使用"chat"程式来拨数据
机并开始远端ppp区段作业(session)。
crtscts
使用硬体流量控制(i.e.RTS/CTS)来控制串列埠上的资
料流。
xonxoff
使用软体流量控制(i.e.XON/XOFF)来控制串列埠上的资
料流。这个选项在BSD或是Ultrix系统上目前并没有实
作出来。
-crtscts
这是一个xonxoff的同义词。
defaultroute
当IPCP协商完全成功时,增加一个预设递送路径到系统
的递送表,将彼端当作闸道器使用。这个项目在ppp连线
中断後会移除。
disconnect
在pppd已经终结该连线之後执行以所指定的可执行
指令或是shell指令。这个指令稿可以用来,例如,如果
硬体的数据机控制信号无法使用时,发出指令给数据机使
其挂断电话。
escapexx,yy,...
指定在传输上确实应该要避开的字元(不管对方是否有用
它的非同步控制字元对照表要求避开它们)。这些要被避
开的字元是以用逗号隔开的一串十六进位数字指定的。要
注意到几乎任何字元都可以用escape选项指定避开,不
像asyncmap选项只允许指定控制字元。不能避开的字元
是那些有十六进位值0x20-0x3f或是0x5e者。
file
从档案里读取选项(其格式叙述在後)
lock指定pppd应该在此串列设备上使用UUCP式的锁定以确
定对该设备为互斥(exclusive)存取。
mru
把MRU[MaximumReceiveUnit最大接收单元]的值设为
n来进行协商。pppd将会要求彼端传送不比位元组
更长的封包。最小的MRU值是128。预设的MRU值则是
1500。对於慢速线路上的建议值是296(其中40个位元
组给TCP/IP表头+256个位元组的资料)。
netmask
把该界面网路遮罩设为,这是一个以″十进位数值加
小数点″("decimaldot")符号表示的32位元网路遮罩。
(e.g.255.255.255.0)
passive
在LCP中开启"passive"选项。加上这个选项,pppd将
会试图初使一个连线;如果没有从彼端接收到回应,那麽
pppd将只会被动地等待从彼端所传来的一个有效LCP封
包(代替结束离开,就像它在没有这个选项时所作的)。
silent加上这个选项,pppd将不会传输LCP封包来初使一个连
线一直到从彼端接收到一个有效的LCP封包。(就像是给
旧版pppd使用的"passive"选项)。
选项
:
设定本地以及/或是远端界面的IP位址。两者之中的任
何一个都可以省略。该IP位址可以利用主机名称或者是
十进位数值加小数点符号指定(e.g.150.234.56.78)。
预设的本地位址是系统的(第一个)IP位址(除非有加上
noipdefault选项)。远端位址如果没有在任何选项中指
定的话将从彼端取得。因此,在简单的案例中,这个选项
不是必须的。如果有一个本地以及/或是远端的IP位址
以这个选项加以指定的话,pppd将不会接受在IPCP协商
中从彼端所传来不同的值,除非加上ipcp-accept-local
以及/或是ipcp-accept-remote选项,个别地。
-all不要求或允许任何对於LCP以及IPCP选项的协商(使用
预设值)。
-ac关闭位址/控制的压缩协商(使用预设的,i.e.address
/controlfielddisabled)。
-am关闭asyncmap的协商(使用预设的asyncmap,i.e.避
开所有的控制字元)。
-as
与asyncmap相同
-d递增侦错层级(与debug选项相同)。
-detach
不要产生成背景程序(否则如果有指定一个串列设备的话
pppd将会自动成为背景程序)。
-ip关闭IP位址协商(加上这个选项的话,远端的IP位址
必须在指令列上或是以一个选项档中的选项加以指定)。
-mn关避魔术数字(magicnumber)协商。加上这个选项的话,
pppd无法侦测到回授的(looped-back)线路。
-mru关闭MRU[MaximumReceiveUnit最大接收单元]协商。
(使用预设的,i.e.1500。)
-p与passive选项相同。
-pc关闭协定栏位压缩协商。(使用预设的,i.e.protocol
fieldcompressiondisable。)
+ua
若彼端要求的话同意使用PAP[PasswordAuthentication
Protocol密码验证协定]来验证,并使用在档案中
的使用者以及密码资料来传送给彼端。该档案包含远端使
用者姓名,跟著一列新行,跟著远端的密码,跟著一列新
行。这个选项是过时的。
+pap要求彼端使用PAP验证它自己。
-pap不要同意使用PAP进行验证。
+chap要求彼端使用CHAP[CryptographicHandshakeAuthen-
ticateProtocol密码化沟通验证协定]来验证它自己。
-chap不要同意使用CHAP进行验证。
-vj关掉VanJacobson式的IP表头压缩协商。(使用预设
的,i.e.无压缩。)
debug递增侦错层级(与-d相同)。如果加上这个选项,pppd
将以可供阅读的格式记录所有传送或接收的控制封包内容。
这些封包透过syslog以facilitydaemon还有level
debug加以记录。该资讯可以适当设定/etc/syslog.conf
来导向到一个档案去。(参阅syslog.conf(5))。(如果
pppd以开启扩充侦错(extradebugging)编译的话,它将
会使用facilitylocal2取代daemon来记录讯息)。
domain
新增领域名称到本地主机名称以支援验证。例如,如
果gethostname()回应porsche这个名称,但是完整合
格的领域名称是porsche.Quotron.COM的话,你可以使用
domain选项来将领域名称设为Quotron.COM。
modem使用数据机控制线路。在Ultrix上,这个选项会实作硬
体流量控制,像crtsct选项作的。(这个选项没有完整
地实作出来。)
kdebugn
开启核心层级中的PPP驱动程式侦错码。参数n是一个
由下列值所组合的数字:1开启一般侦错讯息,2要求印
出所接收到的封包内容,而4要求印出传输的封包内容。
local不要使用数据机控制线路。
mtu
将MTU[MaximumTransmitUnit最大传输单元]的值设
为。除非彼端经由MRU协商要求一个更小的值,pppd
将会要求核心网路程式码透过PPP网路界面所传送的资料
封包不超过n个位元组。
name
将本地系统的名称设为用来进行验证。
user
将使用者名称设为以便让使用PAP的彼端验证这台
机器时使用。
usehostname
强迫主机名称使用本地系统的名称来进行验证。(这会盖
过name选项)。
remotename
将远端系统的假设名称设为以进行验证。
proxyarp
以彼端的IP位址以及该系统的乙太网路位址增加一个项
目到系统的ARP[AddressResolutionProtocol位址解
译协定]表格。
login
使用系统密码资料库验证使用PAP的彼端。
noipdefault
关闭在没有指定本地IP位址时所进行的预设动作,这是
用来由从主机名称决定(如果可能的话)决定本地IP位
址。加上这个选项的话,彼端将必须在进行IPCP协商时
(除非在指令列或在选项档中明确地指定它)提供本地的
IP位址。
lcp-echo-interval
如果有给这个选项,pppd每秒将会送出一个LCP回
应要求(echo-request)封包(frame)给彼端。在Linux系
统下,回应要求在n秒内没有从彼端接收到封包时会被送
出。一般彼端应该以传送一个回应回覆(echo-reply)来反
应该回应要求。这个选项可以与lcp-echo-failure选项
一起使用来侦测不再连线的彼端。
lcp-echo-failure
如果有给这个选项,那麽如果传送n个LCP回应要求没
有接收到有效的LCP回应回覆的话pppd将会推测彼端是
死掉的。如果发生这种情形,pppd将会终结该连线。这个
选项的使用要求一个非零的lcp-echo-interval参数值。
这个选项可以用在硬体数据机控制线路无法使用的情况下
当实际连线被中断之後(e.g.,数据机已经挂断)终结
pppd的执行。
lcp-restart
将LCP重新开始的间隔(重新传输的时间限制)设为
秒钟(预设为3)。
lcp-max-terminate
将LCP终结要求(terminate-request)传输的最大数目设
为(预设为3)。
lcp-max-config
将LCP配置要求(configure-request)传输的最大数目设
为(预设为10)。
lcp-max-failure
将开始传送配置拒绝(configure-Rejects)之前的LCP配
置未接收(configure-NAKs)的最大数目以取代(预设
为10)。
ipcp-restart
将IPCP重新开始的间隔(重新传输的时间限制)设为
秒钟(预设为3)。
ipcp-max-terminate
将IPCP终结要求(terminate-request)传输的最大数目设
为(预设为3)。
ipcp-max-configure
将IPCP配置要求(configure-request)传输的最大数目设
为(预设为10)。
ipcp-max-failure
将开始传送配置拒绝(configure-Rejects)之前的IPCP配
置未接收(configure-NAKs)的最大数目以取代(预设
为10)。
pap-restart
将PAP重新开始的间隔(重新传输的时间限制)设为
秒钟(预设为3)。
pap-max-authreq
将PAP验证要求(authenticate-request)传输的最大数目
设为(预设为10)。
chap-restart
将CHAP重新开始的间隔(重新传输的时间限制)设为
秒钟(预设为3)。
chap-max-challenge
将CHAP盘查(challenge)传输的最大数目设为(预
设为10)。
chap-interval
如果有给这个选项,pppd将会每秒重新盘查彼端。
ipcp-accept-local
加上这个选项的话,pppd将会接受彼端对於本地IP位址
的意见,即使本地的IP位址已经在某个选项中指定。
ipcp-accept-remote
加上这个选项的话,pppd将会接受彼端对於它的IP位址
的意见,即使远端的IP位址已经在某个选项中指定。
选项档案
选项可以从档案取出使用就如同使用命令列一般。pppd在查看指
令列之前先从档案/etc/ppp/options以及~/.ppprc读取选项。
一个选项档案以空白字元为界被剖析成一串单字。空白字元可以用
双引号(")包括在一个单字里。倒斜线引用其後的字元。而杂凑
(#)符号开始一段注解持续到该行结束。
验证
pppd提供系统管理人员充份的存取控制能力这表示以PPP存取一
台伺服机器可以提供给合法的使用者使用而不必担心危及该伺服器
或所在网路的安全性。这有一部份是以/etc/ppp/options档案来
提供,在这里系统管理人员可以放置在执行pppd的时候用来要求
验证的选项,而部份是由PAP以及CHAP暗号档案来提供,其中
系统管理人员可以限制个别的使用者可以使用的一群IP位址。
pppd预设的动作是如果有要求就同意进行验证,并且不要求从彼
端做验证。然而如果没有可以用来验证的暗号则pppd将不会同意
以特殊的协定来验证它自己。
验证的基础是由暗号档案选择的暗号(/etc/ppp/pap-secrets是
给PAP使用的,/etc/ppp/chap-secrets则是给CHAP使用)。
这两个暗号档案都具有相同的格式,而且两者都可以储放暗号给数
种伺服器(验证彼端)及客户(被验证端)组合使用。注意pppd
可以最为伺服端以及客户端,而且如果需要的话两方可以使用不同
的协定。
一个暗号档案如同选项档案一般被剖析成单字。一个暗号是由最少
包含3个单字的一行所指定,依序是客户,伺服器,暗号。在同
一行中任何跟在其後的单字都被当作是给客户的可接受IP位址列
表。如果该行只有3个单字,这假设任何IP位址都可以;不允
许所有的IP位址的话,使用"-"。如果暗号是以'@'开始,其
後所接的单字将被假设为可以从中读取暗号的档案名称。而以一个
"*"字元作为客户或伺服端的名称会符合任何名称。在选择一个暗
号时,pppd会选择最符合的,i.e.最少万用字元的那个。
如此一个暗号档案包含用来验证其它主机,以及用来为其它主机验
证自己两者的暗号。选择使用哪个暗号是根据该主机(’本地名称
’)以及其彼端(’远端名称’)而定。本地名称的设定如下:
如果有给usehostname选项,
那麽本地名称就是这台机器的主机名称
(附领域名称,如果有给的话)
否则如果有给name选项,
那麽使用第一个name选项的参数
否则如果IP位址是以一个主机名称加以指定,
那麽使用该名称
否则使用这台机器的主机名称(附领域名称,如果有给的话)
当使用PAP验证我们自己的时候,也有一个'username'预设为
本地名称,但是可以用user选项或是+ua选项加以设定。
远端名称的设定如下:
如果有给remotename选项,
那麽使用最後一个remotename选项的参数
否则如果远端的IP为只是以一个主机名称加以指定,
那麽使用那个主机名称
否则远端名称是空字串""。
从PAP暗号档案中选择暗号如下:
*要验证彼端,寻找一个在PAP验证要求里的暗号其客户==使
用者,而且伺服器==本地名称。
*要为彼端验证我们自己,寻找一个暗号其客户==我们的使用者
名称,伺服器==远端名称。
当以PAP验证彼端时,一个""暗号符合任何由彼端所提供密码。
如果密码不符合暗号,密码被以crypt()编码并且再次检查暗号;
因此验证彼端的暗号可以编码方式储放。如果指定有login选项,
使用者名称以及密码也会被以系统的密码资料库检查。因此系统管
理人员可以设定pap-secrets档案以便只允许某些使用者以PPP
连线,并且限制每个使用者可以使用一些IP位址。
从CHAP暗号档案中选择暗号如下:
*要验证彼端,寻找一个在CHAP-回应讯息里的暗号其客户==
名称,而且伺服器==本地名称。
*要为彼端验证我们自己,寻找一个暗号其客户==本地名称,而
且在CHAP-盘查讯息里伺服器==名称。
验证必须在IPCP(或任何其它网路控制协定)开始之前被完全地
满足。如果验证失败,pppd将会终结连线(关闭LCP)。如果
IPCP协商出一个无法接受的远端主机IP位址,IPCP将会关闭。
IP封包只有在IPCP打开的时候才能传送或接收。
即使本地主机一般会要求验证,在某些案例中会希望允一些无法验
证它们自己的主机连线并使用所限制的IP位址其中之一。如果彼
在被要求时拒绝验证它自己,pppd将会把它当成等於是在使用者
名称以及密码上使用空字串来以PAP验证。所以,藉由增加一行
指定空字串为客户以及密码到pap-secrets档案去,允许拒绝验
证自己的主机进行有限制的存取是可能的。
递送
当IPCP协商成功地完成时,pppd将会通知核心该ppp界面本地
以及远端的IP位址。这足够用来建立一个主机到该连线远端的递
送路径,该路径将使两端能交换IP封包。与其它的机器进行通讯
往往需要更进一步地修改递送表格(routingtables)以及/或是
ARP(位址解译协定)表格。在某些案例中这将透过routed或是
gated隐形程式的动作自动地完成,但是在大部分的案例中需要更
进一步的介入。
有时候会希望透过远端主机来增加一个预设递送路径,像是在一台
只透过ppp界面连线到Internet的机器。此defaultroute选
项使得pppd在IPCP完成时建立起这麽一个预设的递送路径,并
且在该线路被终结时将之删除。
在某些情况下会希望使用proxyARP,例如在一台连结到区域网
路的伺服机器上,为了能够允许其它的主机与远端主机进行通讯。
proxyarp选项引发pppd去寻找一个与远端主机在相同子网路上
的网路界面(一个支援广播(boardcast)以及ARP的界面,不但要
是可用的并且不是一个点对点或回授界面)。如果找到,pppd会
以该远端主机的IP位址以及所找到的网路界面之硬体位址建立一
个永久的,公开的ARP项目。
范例
在这个最简单的案例中,你可以连接两台电脑的串列埠并发出一行
指令像是:
pppd/dev/ttya9600passive
到每一台机器上,这假设没有在串列埠上执行getty程序。如果
在一台机器上有执行getty,你可以在另一台机器上使用kermit
或是tip来签入第一台机器并发出一行指令像是:
pppdpassive
然後从通讯程式中离开(确定该连线没有断掉),然後发出一行指
令像是:
pppd/dev/ttya9600
签入到另一台机器以及开始pppd的程序可以使用connect选项
执行chat来加以自动化,例如:
pppd/dev/ttya38400connect'chat"""""login:"
"username""Password:""password""%""execpppd
passive"'
(注意到无论如何像这样执行chat将使密码在pppd以及chat
的参数列表中成为可见的。)
如果你的串列连线比直接以线路连接更复杂的话,你可能会需要做
些调整以便避开一些控制字元。特别是,通常避开XON(^Q)以及
XOFF(^S)是有用的,可以使用asyncmapa0000。如果该路径包
含telnet的话,你可能应该也要避开^](asyncmap200a0000)。
如果该路径包含rlogin的话,你将需要在执行rlogin的客户端
上使用escapeff选项,因为许多rlogin的实作并非是透通的;
它们将会从资料流中移除[0xff,0xff,0x73,0x73,跟随的任何
8位元组]这些序列。
诊断
讯息使用facilityLOG_DAEMON送到syslog隐形程式。(这个
可以藉著以所要的facility定义LOG_PPP巨集来重新编译pppd
加以改变。)为了能够看到错误以及侦错讯息,你将需要编辑你的
/etc/syslog.conf档案来将讯息导向到所希望的设备或档案。
debug选项使得所有送出以及接收的控制封包内容都被记录下来,
这是指所有的LCP,PAP,CHAP,或是IPCP封包。如果PPP协商
没有成功的话那麽这可能会有用。如果在编译时期开启侦错功能的
话,pppd会使用facilityLOG_LOCAL2来取代LOG_DAEMON,而
且debug选项会使得额外的侦错讯息被记录下来。
侦错功能也可以藉著传送一个SIGUSR1到pppd程序来启动。侦
错功能可以藉著传送一个SIGUSR2到pppd程序来关闭。
档案
/var/run/pppn.pid(BSD),/etc/ppp/pppn.pid(SunOS)
在ppp界面单元n上的ppp程序之Process-ID。
(Process-IDforpppdprocessonpppinterfaceunit
n.)
/etc/ppp/ip-up
当线路可以传送以及接收IP封包时(也就是IPCP完成
时)执行的一支程式或指令稿。它是以界面的名称、终端
设备、速度、本地-IP-位址、远端-IP-位址为参数执行。
这支程式或是指令稿是以与pppd程式相同的real以及
effectiveuser-ID执行的,也就是说,至少effective
user-ID而且可能该realuser-ID将会是root。这是
因为如此它可以操纵递送路径,执行需要特权的隐形程式
(e.g.dendmail)等等。要小心注意/etc/ppp/ip-up以
及/etc/ppp/ip-down指令稿的内容别要危及到你系统的
安全。
/etc/ppp/ip-down
当线路不再允许传送以及接收IP封包时执行的一支程式
或指令稿。这个指令稿可以用来回复/etc/ppp/ip-up指
令稿的影响。它以与ip-up指令稿相同的参数启动,并且
有相同的安全考量,因为它以与pppd相同的effective
以及realuser-IDs执行。
/etc/ppp/pap-secrets
由PAP验证所使用的使用者名称、密码以及IP位址。
/etc/ppp/chap-secrets
由CHAP验证所使用的名称、暗号以及IP位址。
/etc/ppp/options
pppd的系统预设选项,在使用者预设选项或指令列选项之
前读取。
~/.ppprc
使用者预设选项,在指令列选项之前读取。
/etc/ppp/options.ttyname
所要使用之串列埠的系统预设选项,在指令列之後读取。
参阅
RFC1144
Jacobson,V.CompressingTCP/IPheadersforlow-
speedseriallinks.1990February.
RFC1321
Rivest,R.TheMD5Message-DigestAlgorithm.1992
April.
RFC1332
McGregor,G.PPPInternetProtocolControlProto-
col(IPCP).1992May.
RFC1334
Lloyd,B.;Simpson,W.A.PPPauthenticationproto-
cols.1992October.
RFC1548
Simpson,W.A.ThePoint-to-PointProtocol(PPP).
1993December.
RFC1549
注意
下列信号传送到pppd程序时有特别的影响
SIGINT,SIGTERM
这些信号使得pppd终止该连线(关闭LCP),回存串列
串列设备的设定,并结束离开。
SIGHUP指出实体层已经被断线。pppd将会试图回存串列设备的设
定(这可能会在Suns上产生错误讯息),然後结束离开。
虫虫
数据机控制线路的使用以及数据机和local选项的影响没有定义
完全。
作者
DrewPerkins,BradClements,KarlFox,GregChristy,Brad
Parker(brad@fcr.com),PaulMackerras
(paulus@cs.anu.edu.au)

免责声明:文章转载自《Linux命令Man解释:PPPD :点对点daemon协议》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇PhpUnit9.5环境搭建和覆盖率ubuntu永久修改主机名下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

springsession生成sessionid不一致问题解决

毫无疑问,我遇到的主要问题是两个不同版本的spring boot,需要共享sessionid。...

【转】MUD教程--巫师入门教程4

在MUD中,为了解决定时触发某种现象,一般有两种方法,一种是通过call_out()延时呼叫,另一种就是通过心跳。于是,对于要跨起离线前后的象做牢这类的事,大多都是采用condition。附:由于大多数MUD里的心跳是每两秒调一次,5+random是5至14次,因此可以看出每一个condition被调用的时间是平均19秒。然后它会按照condition的名字...

无法将您的Kindle连接到Wi-Fi网络怎么办-kindle无法连接wifi-kindle无法连接手机热点

问题描述:当连接到Wi-Fi或移动热点时,Kindle会弹出提示:如果我无法将您的Kindle连接到Wi-Fi网络,该怎么办。步骤1:通过USB数据线将Kindle连接到计算机。2.连接后,我电脑的磁盘将像一个USB闪存驱动器,Kindle磁盘将出现在其中。3.进入Kindle磁盘。在Kindle磁盘下,右键单击创建一个名为WIFI_NO_NET_PROBE...

面试了一个 31岁的iOS开发者,思绪万千,30岁以上的程序员还有哪些出路?

前言之前HR给了我一份简历,刚看到简历的第一眼,31岁?31岁,iOS开发工程师,工作经历7年,5年左右都在外包公司,2年左右在创业公司。iOS开发工程师这块,还是很少遇到30岁以上的开发,正好,来了一个30岁的开发,说实话,对我来说,还是蛮期待的,希望对我有所启示。这样的过程持续了半个小时那么年过350岁的程序员还有出路吗?作为一个8年的iOS开发,而且几...

微信小游戏流量主广告接入指南!

游戏通过审核发布上线,累计注册用户达到1000后,可以在管理后台开启流量主功能。广告接入广告类型有三种:激励式视频、插屏和BannerBanner广告接入需要注意:1.广告要显示全,不能放在屏幕外。我的游戏被以上原因拒绝了两次。我的banner广告是放在底部正中间,取最小宽度200。也就是尽量的小,不影响游戏操作。激励视频按钮一定要有视频广告相关的提示!...

安装qmake与环境变量解析

如果你已经有了qmake,可以跳过这里,请看10分钟学会使用qmake。手动安装qmake在手工连编Qt之前,下面这些环境变量必须被设置:QMAKESPEC这个必须设置为你所使用的系统的平台和编译器的组合。当编译完成时,qmake已经可以使用了。这里对添加环境变量时,是在path里头添加,还是new一个变量有点疑惑。而如果是new的话,当我们在为程序添加路径...