<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Halil UĞUR</title>
	<atom:link href="https://ugurhalil.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://ugurhalil.com</link>
	<description>Yazılım; yaşam ve düşünce tarzıdır.</description>
	<lastBuildDate>Wed, 27 Jul 2022 23:45:15 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=5.3.2</generator>

<image>
	<url>https://ugurhalil.com/wp-content/uploads/2020/08/HuLogoRGB256-150x150.png</url>
	<title>Halil UĞUR</title>
	<link>https://ugurhalil.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Hybris Dosya Yapısı, Extension Oluşturma: Bölüm 2</title>
		<link>https://ugurhalil.com/hybris-dosya-yapisi-extension-olusturma/</link>
				<pubDate>Tue, 04 Aug 2020 17:46:44 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Hybris]]></category>
		<category><![CDATA[create extension]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[extension hybris]]></category>
		<category><![CDATA[extgen]]></category>
		<category><![CDATA[how to create extension]]></category>
		<category><![CDATA[hybris]]></category>
		<category><![CDATA[hybris ant command]]></category>
		<category><![CDATA[hybris e commerce]]></category>
		<category><![CDATA[hybris extension]]></category>
		<category><![CDATA[hybris nedir]]></category>
		<category><![CDATA[hybris sap]]></category>
		<category><![CDATA[modulgen]]></category>
		<category><![CDATA[sap hybris]]></category>

		<guid isPermaLink="false">https://ugurhalil.com/?p=222</guid>
				<description><![CDATA[<p>Hybris Bir önceki yazımızda Hybris&#8217;in ne olduğunu ve ne için kullanılabileceğine değinmiştik. Aynı zamanda Hybris&#8217;in B2C yapısına sahip e-ticaret sitesinin kurulumunu da gerçekleştirmiştik. (Bir önceki yazıya gitmek isterseniz buraya tıklayabilirsiniz.) Bu bölümde ise kendimize ait bir eklentiyi nasıl oluşturacağımızı ve bunu hybris projemize nasıl dahil edeceğimizi öğreneceğiz. Hybris&#8217;in Dosya Yapısı Eklenti oluşturmayı öğrenmeden önce dosyaların [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/hybris-dosya-yapisi-extension-olusturma/">Hybris Dosya Yapısı, Extension Oluşturma: Bölüm 2</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1.png" alt="Hybris" class="wp-image-215" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1.png 678w, https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1-300x169.png 300w" sizes="(max-width: 678px) 100vw, 678px" /><figcaption>Hybris</figcaption></figure>



<p>Bir önceki yazımızda Hybris&#8217;in ne olduğunu ve ne için kullanılabileceğine değinmiştik. Aynı zamanda Hybris&#8217;in B2C yapısına sahip e-ticaret sitesinin  kurulumunu da gerçekleştirmiştik. (Bir önceki yazıya gitmek isterseniz <a href="https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/">buraya</a> tıklayabilirsiniz.) Bu bölümde ise kendimize ait bir eklentiyi nasıl oluşturacağımızı ve bunu hybris projemize nasıl dahil edeceğimizi öğreneceğiz.</p>



<h4>Hybris&#8217;in Dosya Yapısı</h4>



<p>Eklenti oluşturmayı öğrenmeden önce dosyaların nerede oluştuğu nasıl oluştuğu, hangi komutların kullanılması gerektiğini açıklamak gerekiyor.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/hybrisFolder.png" alt="Hybris base folder." class="wp-image-230" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/hybrisFolder.png 886w, https://ugurhalil.com/wp-content/uploads/2020/08/hybrisFolder-300x68.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/hybrisFolder-768x175.png 768w" sizes="(max-width: 886px) 100vw, 886px" /><figcaption>Hybris base folder.</figcaption></figure>



<ul><li><strong>bin ===&gt;  </strong>Bu klasörün altında sizin veya Hybris geliştiricileri tarafından geliştirilen modül, eklenti, entegrasyon veya uygulamaların bulunduğu klasördür.</li><li><strong>config ===&gt;</strong> bin klasörü altında bulunan modül, eklenti, entegrasyon veya uygulamaların konfigürasyonlarını yapabileceğimiz bir klasördür.  Oluşturacağımız eklentileri bu dosya altında konfigüre ederek Hybris&#8217;e dahil edeceğiz. Burası ile haşir neşir olacağımız için şuan çok üstünde durmuyorum.</li><li><strong>data ===&gt;</strong>  İsminden de anlaşılacağı üzere veri klasörü olarak geçmektedir. Ne tür veriler diyecek olursanız da şöyle açıklamaya çalışayım; Verilerimizin tutulduğu HSQLDB veritabanı, Solr ile dökümante ettiğimiz veriler, medya olarak sakladığımız görüntü veya herhangi bir dosya uzantılı veriyi tutabilmemizi sağlayan klasördür. İlerde şöyle bir soru sorabilirsiniz &#8220;Bu var olan verilerin tutulduğu veritanabını görmek istiyorum nerede bu?&#8221; bunun cevabı bu klasörün altında olacaktır. </li><li><strong>log ===&gt;</strong> Hybris platformunda veya JDBC ile ilgili oluşan hata, bilgilendirme veya uyarı mesajların tutulduğu klasördür.</li><li><strong>roles ===&gt;</strong> Proje ilk oluşturulduğunda boş olarak gelmektedir ancak daha sonra roller oluşturulduğunda buraya o roller ile ilgili klasörler ve dosyalar oluşmaktadır.</li><li><strong>temp ===&gt;</strong> ant all komutu ile oluşan geçici dosyaların tutulduğu klasördür.</li></ul>



<p>Hybris dosyalarını kabataslak tanıdığımıza göre eklenti nedir ve nasıl oluşturulur aşamasına geçebiliriz. Eğer detaylı olarak hybris klasörlerini incelemek isterseniz <a href="https://cxwiki.sap.com/pages/viewpage.action?spaceKey=release5&amp;title=Directory+Structure+of+SAP+Hybris+Commerce">buradan</a> erişebilirsiniz.</p>



<h4>Eklenti Nedir ve Nasıl Oluşturulur?</h4>



<p>Eklentiyi tek kelime ile açıklamak hem kafa karışıklığına hemde ne olduğunu anlamakta sorun yaratacağından maddeler halinde eklentiler ile neler yapılabileceğini yazmayı tercih ettim ama özetle şöyle diyebilirim; hybris platformunu genişletmek amacıyla kullanılan program parçacıklarıdır.</p>



<ul><li>Hybris projesinde var olan program parçacıklarını değiştirmek için kullanılabilir. (hybriste var olan eklentinin ezilmesi ile oluşturulan eklenti tipleridir.)</li><li>Hybris tarafından sunulmayan yapılar oluşturmak için kullanılabilir.(tamamen geliştirici tarafından geliştirilen eklentilerdir.)</li><li>İki farklı yazılım arasında entegrasyon sağlamak için kullanılabilir.(Entegre olunacak olan yapı ile koordineli olarak geliştirilen eklentilerdir.)</li></ul>



<p>Eklentinin en önemli özellği projeden rahatlıkla çıkarılabilir ve tekrar takılabilir olmasıdır. (Burada iş yazılımcı tarafına düşüyor ve eklentinin bu amaçla geliştirilmesi gerektiğini bilmesi gerekiyor. Bu yüzden bağımlılıklara dikkat edip ona göre geliştirmesine yapmalıdır.) Eklenti projeden çıkarıldığı zaman herhangi ek bir geliştirme yapılmadan projenin eski yapısıyla çalışması mümkün olabilmelidr aksi taktirde iyi geliştirilen bir eklenti değildir.</p>



<p>Eklenti kavramını anladığımıza göre şimdi eklenti oluşturalım;  Öncelikle hybris platformumuzun kapalı halde olması gerekiyor böylece oluşturacağımız eklentiyi ekledikten sonra ant komuları ile tekrardan derleyip dosyaları oluşturduktan sonra başlatabileceğiz.</p>



<pre class="wp-block-code"><code>. ./setantenv.sh
ant extgen</code></pre>



<p>Yukarıdaki komutlar çalıştırıldıktan sonra karşımıza aşağıdaki gibi bir ekran çıkıyor.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen-1024x411.png" alt="Ant extgen command" class="wp-image-264" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen-1024x411.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen-300x120.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen-768x308.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen.png 1135w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Ant extgen command</figcaption></figure>



<p>Yukarıda bulunan resimde kırmızı ile işaretli olan kısım varsayılan olarak seçilmiş eklenti şablonunu göstermektedir, siz doğrudan enter tuşuna basarsanız bu eklenti şablonundan yeni bir eklenti oluşturmaya başlayacaktır. Sarı ile işaretli olan kısımlar ise hybris&#8217;in sizin için işe yarayacağını düşündüğü diğer eklenti şablonlarıdır. Biz şimdilik basit bir yapı ile ilerleyeceğimiz için varsayılan şablon ile devam ediyoruz.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen2-1024x417.png" alt="Ant extgen command" class="wp-image-267" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen2-1024x417.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen2-300x122.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen2-768x313.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen2.png 1134w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Ant extgen command</figcaption></figure>



<p>Enter tuşuna bastıktan sonra yukarıdaki resimde kırmızı ile işaretlenmiş kısımda eklentimize isim vermek için bizden bir isim bekliyor, ben eklentinin ismini <strong>hellohybris</strong> diye koyuyorum.(Eklentilere isim verilirken dikkat edilmelidir, oluşturulan bir eklentinin ismini değiştirmek oldukça zordur.) İsmi verdikten sonra enter tuşuna basıp devam ediyoruz.  </p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen3-1024x406.png" alt="Ant extgen command" class="wp-image-268" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen3-1024x406.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen3-300x119.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen3-768x305.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen3.png 1140w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Ant extgen command</figcaption></figure>



<p>Şimdide oluşturduğunuz eklenti için paket ismi vermemizi istiyor, ben <strong>com.ugurhalil.hellohybris</strong> diye koyuyorum.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen4-1024x412.png" alt="Ant extgen command" class="wp-image-270" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/antextgen4-1024x412.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen4-300x121.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen4-768x309.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/antextgen4.png 1143w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Ant extgen command</figcaption></figure>



<p>Paket ismi girildikten sonra eklenti oluşturma işlemini bitirmiş oluyoruz. Son gelinen ekranda size bu eklentinin nerede oluşturulduğu ve nasıl sisteme dahil edileceğinin bilgisini vermektedir. </p>



<h4>Oluşturulan Eklentinin Projeye Dahil Edilmesi</h4>



<p>İlk adımda <strong>&#8220;&lt;exten&#8230;&#8221; </strong> ile başlayan ifadeyi <strong>localextensions.xml </strong>dosyasına eklemenizi istiyor. Burada küçük bir noktaya değinmek istiyorum, size verilen &#8220;<strong>&lt;extension dir=&#8221;/home/halilugur&#8230;.. &#8220;</strong>  ifadesi, eklentinin bilgisayardaki tam dizinini belirterek veriyor. Bunun nedeni aynı isme sahip iki eklenti var ise birbirleri ile karışmasını önlemek amacı ile yapıyor, eğer o isimde sadece birtane eklentiniz var ise aşağıdaki şekilde kullanılması localextensions.xml dosyasının okunaklığı açısından daha verimli olacaktır. Örnek kullanım;</p>



<pre class="wp-block-code"><code>&lt;extension name='hellohybris' /></code></pre>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/image.png" alt="localextensions file image" class="wp-image-277" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/image.png 818w, https://ugurhalil.com/wp-content/uploads/2020/08/image-300x135.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/image-768x346.png 768w" sizes="(max-width: 818px) 100vw, 818px" /><figcaption>localextensions file image</figcaption></figure>



<p>Eklentiyi <strong>localextensions.xml</strong> dosyasına ekledikten sonra aşağıda bulunan tek satırlık komutu çalıştırıyoruz.</p>



<p><strong>hybrisProject/hybris/bin/platform</strong> klasörün altına giderek;</p>



<pre class="wp-block-code"><code>. ./setantenv.sh &amp;&amp; ant clean all &amp;&amp; ./hybrisserver.sh debug</code></pre>



<p>İşlemler bittikten sonra tarayıcınızı açıp aşağıdaki url&#8217;yi girin;</p>



<p><a href="https://electronics.local:9002/hellohybris/">https://electronics.local:9002/hellohybris</a>/</p>



<p>Hybris platformunu bir önceki yazımızda <strong>ant initialize</strong> çekerek hazır hale getirmiştik. Bu yüzden <strong>yeni eklediğimiz eklentinin logosu hybris tarafında oluşmadığı için arka tarafta hata fırlatıyor</strong> ve eklentimizin açılmamasına neden oluyor. </p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/image-2.png" alt="404 Server runtime exception" class="wp-image-320" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/image-2.png 677w, https://ugurhalil.com/wp-content/uploads/2020/08/image-2-300x96.png 300w" sizes="(max-width: 677px) 100vw, 677px" /><figcaption>404 Server runtime exception</figcaption></figure>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/logoError-1024x338.png" alt="Hybris logo not found exception." class="wp-image-281" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/logoError-1024x338.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/logoError-300x99.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/logoError-768x253.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/logoError-1536x506.png 1536w, https://ugurhalil.com/wp-content/uploads/2020/08/logoError.png 1920w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris logo not found exception.</figcaption></figure>



<p>Yukarıda bulunan resimdeki gibi bir hata alıyorsanız platformunuza <strong>ant initialize</strong> çekin daha sonra tekrar denediğinizde böyle bir sorun ile karşılaşmadığınızı göreceksiniz.</p>



<p>Platformu sıfırladıktan sonra tekrar url&#8217;yi test ettiğimizde karşımıza aşağıdaki gibi bir görüntü çıkmasını bekliyoruz.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser-1024x450.png" alt="Extension preview" class="wp-image-283" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser-1024x450.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser-300x132.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser-768x338.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser-1536x676.png 1536w, https://ugurhalil.com/wp-content/uploads/2020/08/resultBrowser.png 1839w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Extension preview</figcaption></figure>



<p>Eklentimiz artık özelleştirilebilir ve özellik eklenebilir duruma geldi. Son olarak eklentimizin dosya yapısına da göz atalım ve bu yazıyı sonlandıralım. </p>



<p>Eklentimizi <strong>bin/custom</strong> klasörü altında bulabiliriz. Bu klasör bizim oluşturuduğumuz eklentilerin veya ezdiğimiz hybris eklentilerin yer aldığı klasördür.  </p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/extensionFolder-1024x578.png" alt="Extension Folder" class="wp-image-310" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/extensionFolder-1024x578.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/08/extensionFolder-300x169.png 300w, https://ugurhalil.com/wp-content/uploads/2020/08/extensionFolder-768x434.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/extensionFolder.png 1045w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Extension Folder</figcaption></figure>



<ul><li><strong>classes ===&gt;</strong> derlenen java dosyaların bulunduğu klasördür.</li><li><strong>gnsrc ===&gt;</strong> hybris tarafından otomotik oluşturulan dosyaların bulunduğu klasördür.</li><li><strong>lib ===&gt; </strong>eklentimize ekstradan eklemek istediğimiz kütüphanlerin  klasörüdür.</li><li><strong>resources ===&gt;</strong> Kaynakların oluşturulduğu klasördür.</li><li><strong>src ===&gt;</strong> Java dosyaların bulunduğu klasördür.</li><li><strong>testsrc ===&gt;</strong> Oluşturduğumuz java sınıflarının test sınıflarını yazdığımız klasördür.</li><li><strong>web ===&gt;</strong> eklentimizin bir arayüzü var ise arayüzün geliştirilebilmesini sağlayan klasördür.</li><li><strong>.externalToolBuilders ve .settings</strong> <strong>===&gt; </strong>eclipse ile ilgili klasörlerdir.</li></ul>



<p>Klasör altında bulunan dosyaları daha sonra detaylı bir şekilde inceleyeceğiz ve her birinin ne işe yaradığına değineceğiz. Şimdilik hoşçakalın esenle kalın.</p>



<p>Bir sonraki hybris yazısında görüşmek üzere.</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/hybris-dosya-yapisi-extension-olusturma/">Hybris Dosya Yapısı, Extension Oluşturma: Bölüm 2</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>Hybris Nedir ve Nasıl Kurulur : Bölüm 1</title>
		<link>https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/</link>
				<comments>https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/#comments</comments>
				<pubDate>Tue, 28 Jul 2020 12:58:34 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Genel]]></category>
		<category><![CDATA[Hybris]]></category>
		<category><![CDATA[how to install hybris]]></category>
		<category><![CDATA[hybris]]></category>
		<category><![CDATA[hybris ant command]]></category>
		<category><![CDATA[hybris e commerce]]></category>
		<category><![CDATA[hybris nedir]]></category>
		<category><![CDATA[hybris sap]]></category>
		<category><![CDATA[sap hybris]]></category>
		<category><![CDATA[what is hybris]]></category>
		<category><![CDATA[what is hybris in sap]]></category>

		<guid isPermaLink="false">https://ugurhalil.com/?p=189</guid>
				<description><![CDATA[<p>Hybris Hybris nedir sorusuna standart cevaplara karşın kendi anladığım ve üzerinde nelerin inşa edilebileceği bilgisini içerebilecek bir yazı yazmayı hedefledim. Keyifli okumalar. Hybris Nedir? Hybris 1997&#8217;de ilk olarak ürün içerik yönetim sistemi yapısıyla ortaya çıkmış ve daha sonra çok kanallı ticaret, veri yönetimi, mobil ticaret ve e-ticaret danışmanlığı olarak genişlemeye devam etmiş bir platformdur. (Detaylı [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/">Hybris Nedir ve Nasıl Kurulur : Bölüm 1</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1.png" alt="" class="wp-image-215" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1.png 678w, https://ugurhalil.com/wp-content/uploads/2020/07/HybrisLogo-1-300x169.png 300w" sizes="(max-width: 678px) 100vw, 678px" /><figcaption>Hybris</figcaption></figure>



<p>Hybris nedir sorusuna standart cevaplara karşın kendi anladığım ve üzerinde nelerin inşa edilebileceği bilgisini içerebilecek bir yazı yazmayı hedefledim. Keyifli okumalar.</p>



<h4>Hybris Nedir?</h4>



<p>Hybris 1997&#8217;de ilk olarak ürün içerik yönetim sistemi  yapısıyla ortaya çıkmış ve daha sonra çok kanallı ticaret, veri yönetimi, mobil ticaret ve e-ticaret danışmanlığı olarak genişlemeye devam etmiş bir platformdur. (Detaylı wiki sayfası için <a href="https://en.wikipedia.org/wiki/Hybris_(company)">buraya</a> tıklayın. Hybris&#8217;in kendi wiki sayfası için <a href="https://cxwiki.sap.com/">buraya</a> tıklayın. SAP üyeliğinizin olması gerekir.)</p>



<p>Hybris platformun kendisini anlatmandan önce platformun ne anlamda kullanıldığına değinmek istiyorum: Farklı teknoloji ve yazılımların bir araya gelerek oluşturdukları yazılım topluluğu diyebiliriz. (Frameworks, Softwares, Libraries, Servers vs..)</p>



<p>&#8220;<strong>Hybris neden bir platformdur</strong>&#8221; diyecek olursakta sebebi şu: İçinde birden çok  teknolojiyi barındırması yanı sıra hybris ekibinin özel olarak geliştirdiği sistemler de mevcuttur, içerisinde framework ve kübütpahnelerin dışında bağımsız yazılımlar da barındırıyor aynı zamanda içinde barındırdığı bu yazılım ve eklentileri kontrol edebileceğimiz yapılarda mevcut, bu sepeble hybris bir yazılımdır demek diğer teknolojileri yok saymak diyebilriz bu yüzden bir platform demek daha doğru olacaktır. </p>



<p>Hybris platformu yaygın olarak e-ticaret üzerinde kurulmuştur, e-ticaret sistemi dışında, ister bir blog sitesi yaparsınız, ister kişi yönetim sistemi yaparsınız isterseniz de sadece onay sistemi barındıran bir yapı kurarsınız tamamen size kalmış. Hybris nedir sorusuna cevaben en iyi cevap şöyle verebilirim; siz yazılımsal olarak ne isterseniz onu yapabilirsiniz.</p>



<h4>Hybris Kurulumu</h4>



<p>Hybrisin ne olduğunu bildiğimize göre artık hybris uzmanıyız :P, şimdi biraz görsel biraz da kod ile nasıl kurulur onu anlatayım. Kurulumu Linux işletim sistemi üzerinde yapacağım.</p>



<ul><li>Öncelikle <a href="https://launchpad.support.sap.com/#/softwarecenter/search/SAP%2520Commerce">buradan</a> hybris&#8217;i indiriyoruz, büyük ihtimalle indiremeyenler olacaktır, bunun sebebi ya yetkiniz yoktur ya da SAP üyesi değilsiniz. Ne yetkim var ne de SAP üyeliğim var diyorsanızda biraz github üzerinden araştırma yapmanızı tavsiye ederim birşeyler bulacaksınız. 🙂 </li><li>Dosyayı indirdiniz aşağıdaki bir klasör yapısı ile karşılaşmanız lazım. (veya github üzerinden bulduysanız.)</li></ul>



<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisArchive.png" alt="" class="wp-image-194" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisArchive.png 789w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisArchive-300x135.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisArchive-768x347.png 768w" sizes="(max-width: 789px) 100vw, 789px" /></figure></div>



<ul><li>Dosyaları olduğu gibi bir klasöre çıkartıyoruz, ismi hybrisProject olabilir.</li><li>Kuruluma başlamadan önce üzerinde çalıştığımız hybris sürümünü öğrenmek için; <strong>hybrisProject/installer/version</strong> dosyasını herhangi bir edidör ile açıyoruz. Benim şuan çalıştığım sürüm <strong>18.11.0-M13</strong> versiyonu olarak geçiyor.</li><li><strong>Java&#8217;nın 1.8 </strong>sürümü ile uyumlu çalışmaktadır, Hybris&#8217;in yukarıdaki verisyonundan sonrakiler Java 11 desteklemektedir.</li><li>Kuruluma başlamak için <strong>installer/</strong> dosyasındayken bir komut penceresi açıyoruz.</li></ul>



<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/installFolder-1024x156.png" alt="" class="wp-image-195" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/installFolder-1024x156.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/installFolder-300x46.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/installFolder-768x117.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/installFolder.png 1137w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure></div>



<pre class="wp-block-code"><code>./install.sh -r b2c_acc -A local_property:initialpassword.admin=nimda</code></pre>



<ul><li>Komutlar;<ul><li><strong>./install.sh</strong> <strong>===&gt;</strong> kurulum dosyasını bulup kopayalanacak olan dosyaların hedeflerine kopyalanmasını başlatan batch dosyası.</li></ul><ul><li><strong>-r</strong> ==<strong>=&gt;</strong> installer dosyasının altında bulunan recipes klasörünü işaret etmektedir.</li></ul><ul><li><strong>b2c_acc</strong> <strong>===&gt;</strong> recipes klasörünün altında bulunan ve kurulması istenen yapıyı işaret etmektedir.</li></ul><ul><li><strong>-A local_property:initialpassword.admin=nimda</strong> <strong>===&gt;</strong> sistemin tamamen kurulumu bittiğinde başlangıç olarak admin şifresini belirlemek amacı ile kullanılmaktadır, daha önceki hybris sürümlerinde böyle bir komut girmenize gerek yoktu ve doğrudan <strong>admin şifresi nimda</strong> olarak belirlenirdi. </li><li>Siz hybrisin eski bir versiyonunu bulduysanız şu komutu girmeniz yeterli olacaktır; <strong>./install.sh -r b2c_acc</strong></li></ul></li><li>Yukarıdaki komut sizin indirdiğiniz hybris projesinde yer alan yapılardan biri olan <strong>B2C</strong> yapısı, yani <strong>Business to Customer</strong> yapısını kurmuş olacağız. B2C, B2B veya Marketplace gibi birbirinden farklı yapılar hybris içerisinde mevcut ve bunların hangi amaçla ne için kullanıldığı SAP sitesinden veya internet üzerinden küçük bir araştırma yaparak bulabilirsiniz. (Örnek araştırma; what&#8217;s the difference between b2b and b2c marketing)</li><li>Yukarıdaki komutu çalıştırdıktan sonra herhangi bir sorun ile karşılaşmamanız gerekiyor. Aşağıdaki gibi bir çıktı almanızı bekliyorum. </li></ul>



<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisInstal-1024x345.png" alt="Hybris build successful" class="wp-image-197" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisInstal-1024x345.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisInstal-300x101.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisInstal-768x259.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisInstal.png 1142w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris Build a successful image.</figcaption></figure></div>



<p><em>Bir sorun ile karşılaşırsanız lütfen yorum yapın elimden geldiğince yardım etmeye çalışırım.</em></p>



<h4>Hybris&#8217;i Çalıştıralım</h4>



<ul><li>Kurulum işlemi tamamlandıktan sonra komut penceresinden <strong>hybrisProject/hybris/bin/platform</strong> altına giderek sırası ile;</li></ul>



<pre class="wp-block-code"><code>. ./setantenv.sh
ant clean
ant all
ant initialize
./hybrisserver.sh debug</code></pre>



<ul><li>Komutlar; <ul><li><strong>. ./setantenv.sh</strong> <strong>===&gt;</strong> Apache ant kütüphanesini aktif edebilmek için kullanılan bir batch dosyası. Apache Ant ile ilgili detaylı bilgiye <a href="https://ant.apache.org/">buradan</a> ulaşabilirsini.</li><li><strong>ant clean ===&gt; </strong>Daha önce derlenmiş veya alt eklentilerden ana eklentilere kopyalanmış dosyaların tamamını temizlemek için kullanılan bir komuttur. (Hangi dosyalar derseniz java, properties, jsp, css, js vs&#8230;.)</li><li><strong>ant all ===&gt;</strong> Bütün dosyaların derlenmesini ve kopyalanmasını sağlayan komuttur. (Hangi dosyalar olduğunu biliyorsunuz.)</li><li><strong>ant initialize ===&gt; </strong>Bütün dosyaları temizledik ve tekrardan en güncel halleri ile oluşturduk, şimdi platformun hazırlanması gerekiyor. initialize komutu çalıştırıldığında veritabanını basit veriler ile doldurarak bizim için hazır hale getirmesini sağlıyor.</li><li><strong>./hybrisserver.sh debug ===&gt;</strong> Platform tamamen hazır hale geldikten sonra bu komut ile platformu başlatıyoruz ve lolcalde hybris platformunu çalıştırmış oluyoruz. Yanındaki <strong>debug</strong> kelimesini eklemek zorunda değilsiniz eğer bunu eklerseniz java üzerinde debugging işlemi yapabilmenizi sağlayacaktır. (Debug nedir bilmiyorsanız; <strong>what is debug in java</strong> veya <strong>what is mean debug</strong> (google amca direk size bilgi veriyor ne olduğu ile ilgili))</li></ul></li><li>Komutların ne olduğunu anladığımıza göre şimdi herbir komutu sırasıyla çalıştıracağım ve tek tek ekran görüntüsünü paylaşacağım.</li></ul>



<div class="wp-block-image"><figure class="aligncenter size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisClean-1024x395.png" alt="Hybris ant clean command." class="wp-image-206" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisClean-1024x395.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisClean-300x116.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisClean-768x296.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisClean.png 1142w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris ant clean command.</figcaption></figure></div>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisAll-1024x399.png" alt="Hybris ant all command." class="wp-image-207" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisAll-1024x399.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisAll-300x117.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisAll-768x299.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisAll.png 1142w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris ant all command.</figcaption></figure>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisinit-1024x400.png" alt="Hybris ant initialize command." class="wp-image-209" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisinit-1024x400.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisinit-300x117.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisinit-768x300.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisinit.png 1138w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris ant initialize command.</figcaption></figure>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisstart-1024x414.png" alt="Hybris ./hybrisserver.sh debug command." class="wp-image-210" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hybrisstart-1024x414.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisstart-300x121.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisstart-768x311.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hybrisstart.png 1137w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Hybris ./hybrisserver.sh debug command.</figcaption></figure>



<p>Bütün komutlar sağlıklı bir şekilde çalıştıysa ve herhangi bir sorunla karşılaşmadıysanız platformunuz ayakta demektir, yani şuan hybris server&#8217;ı çalışıyor durumda olması lazım. Sitemizi görmek için son bir ayar yaparak bu yazımı sonlandıracağım.</p>



<h4>Host Konfigürasyonu</h4>



<p>Yeni bir komut penceresi açın ve hemen aşağıdaki komutu girin;</p>



<pre class="wp-block-code"><code>sudo nano /etc/hosts</code></pre>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/07/hostconf-1024x447.png" alt="" class="wp-image-211" srcset="https://ugurhalil.com/wp-content/uploads/2020/07/hostconf-1024x447.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/07/hostconf-300x131.png 300w, https://ugurhalil.com/wp-content/uploads/2020/07/hostconf-768x335.png 768w, https://ugurhalil.com/wp-content/uploads/2020/07/hostconf.png 1140w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Resimde işaretlediğim kısma <strong>electronics.local </strong>ifdesini ekleyin ve kaydedin. Böylece hybris&#8217;te default olarak tanımlanmış olan web siteye erişebiliyor olacağız. </p>



<p><a href="https://electronics.local:9002/yacceleratorstorefront/electronics/en/">https://electronics.local:9002/yacceleratorstorefront/electronics/en/</a></p>



<p>Yukarıdaki linke tıklayarak localinizde kaldırmış olduğunuz web site arayüzüne erişebilirsiniz. </p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-682x1024.png" alt="" class="wp-image-235" srcset="https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-682x1024.png 682w, https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-200x300.png 200w, https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-768x1153.png 768w, https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-1023x1536.png 1023w, https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local-1364x2048.png 1364w, https://ugurhalil.com/wp-content/uploads/2020/08/electronics-local.png 1920w" sizes="(max-width: 682px) 100vw, 682px" /></figure>



<p>Dilim döndüğünce anlatmaya ve açık bir şekilde aktarmaya çalıştırm eksik veya bir hatam var ise affola.</p>



<p>Bir sonraki hybris yazısında görüşmek üzere.</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/">Hybris Nedir ve Nasıl Kurulur : Bölüm 1</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
							<wfw:commentRss>https://ugurhalil.com/hybris-nedir-ve-nasil-kurulur/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
							</item>
		<item>
		<title>Diyagramlar ve Ödeme Sistemi Diyagramı</title>
		<link>https://ugurhalil.com/diyagramlar-ve-odeme-sistemi-diyagrami/</link>
				<pubDate>Thu, 26 Mar 2020 08:41:36 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Diyagramlar]]></category>
		<category><![CDATA[design pattern]]></category>
		<category><![CDATA[diagrams]]></category>
		<category><![CDATA[diyagramlar]]></category>
		<category><![CDATA[ödeme sistemi]]></category>
		<category><![CDATA[payment sytem]]></category>
		<category><![CDATA[strategy]]></category>
		<category><![CDATA[tasarım kalıpları]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=125</guid>
				<description><![CDATA[<p>Diyagramlar, kavraması bazen zor olan yapıların veya bilgilerin daha rahat ve açık bir şekilde anlaşılmasını sağlayan şekiller bütünüdür. Diyagramları üç ana başlık altında toplayabiliriz. Bunlar; Grafik benzeri diyagramlar, Graph tabanlı diyagramlar, Şematik diyagramlar. Bunları kısaca örnekleyecek olursak; Grafik Tabanlı Diyagramlar Graph Tabanlı Diyagramlar Şematik Tabanlı Diyagramlar Bu yazının amacı diyagramların ne olduğunu yazmak veya onlardan [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/diyagramlar-ve-odeme-sistemi-diyagrami/">Diyagramlar ve Ödeme Sistemi Diyagramı</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p>Diyagramlar, kavraması bazen zor olan yapıların veya bilgilerin daha rahat ve açık bir şekilde anlaşılmasını sağlayan şekiller bütünüdür. Diyagramları üç ana başlık altında toplayabiliriz. Bunlar; Grafik benzeri diyagramlar, Graph tabanlı diyagramlar, Şematik diyagramlar. Bunları kısaca örnekleyecek olursak;</p>



<span id="more-125"></span>



<ul><li><h3>Grafik Tabanlı Diyagramlar</h3></li></ul>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/03/image-1024x264.png" alt="Grafik Tabanlı Diyagramlar" class="wp-image-126" srcset="https://ugurhalil.com/wp-content/uploads/2020/03/image-1024x264.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/03/image-300x77.png 300w, https://ugurhalil.com/wp-content/uploads/2020/03/image-768x198.png 768w, https://ugurhalil.com/wp-content/uploads/2020/03/image.png 1052w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<ul><li><h3>Graph Tabanlı Diyagramlar</h3></li></ul>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/03/image-1-1024x268.png" alt="Graph Tabanlı Diyagramlar" class="wp-image-127" srcset="https://ugurhalil.com/wp-content/uploads/2020/03/image-1-1024x268.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/03/image-1-300x78.png 300w, https://ugurhalil.com/wp-content/uploads/2020/03/image-1-768x201.png 768w, https://ugurhalil.com/wp-content/uploads/2020/03/image-1.png 1052w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<ul><li><h3>Şematik Tabanlı Diyagramlar</h3></li></ul>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/03/image-2-1024x324.png" alt="Şematik Tabanlı Diyagramlar" class="wp-image-128" srcset="https://ugurhalil.com/wp-content/uploads/2020/03/image-2-1024x324.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/03/image-2-300x95.png 300w, https://ugurhalil.com/wp-content/uploads/2020/03/image-2-768x243.png 768w, https://ugurhalil.com/wp-content/uploads/2020/03/image-2.png 1084w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Bu yazının amacı diyagramların ne olduğunu yazmak veya onlardan bahsetmek değil (yukarıdaki resimlere ve yazıya erişmek için <a href="https://en.wikipedia.org/wiki/Diagram">buradan</a> devam edebilirsiniz) asıl amaç kendi tasarladığım yazılım diyagramlarını paylaşmak ve paylaştığım bu diyagramların ne olduğunu ve nasıl kullanılması gerektiği ile ilgili bilgiler paylaşmak. </p>



<h3>Ödeme Sistemi Diyagramı</h3>



<p>Ödemeler çoğu zaman büyük bir baş belası olabilir ve sürekli değişkenlik göstermesi yazılımcıları oldukça zahmetli bir sürece sokabiliyor. Bu yüzden yazılımcılar tasarladıkları yapıların esnek bir şekilde genişleyebilmesini isterler, tabi herşeyi esnke yapamazsınız örneğin bir balonu ele alalım, şişirdiğiniz kadar şişer ancak bir noktadan sonra şişirmeyi bırakmazsanız patlar 🙂 doğal olarak bir yazılımı evet esnek yapmalısınız ancak esneme noktasında bir sınır koymanız gerekiyor eğer sınır koymazsanız yaptığınız yazılım patlamayla sonuçlanır.</p>



<p>Konumuza geri dönelim, şimdi hemen altta bir ödeme diyagramı paylaşacağım, ancak bu diyagramı incelmeden önce tavsiye olarak <a href="https://en.wikipedia.org/wiki/Strategy_pattern">Strategy tasarım kalıbına</a> bir göz atmanızda fayda sağlayacaktır böylece aşağıda göreceğiniz şemayı daha rahat kavrıyor olabileceksiniz.</p>



<figure class="wp-block-image size-large"><img src="https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram-1024x477.png" alt="Ödeme Diyagramı" class="wp-image-129" srcset="https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram-1024x477.png 1024w, https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram-300x140.png 300w, https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram-768x358.png 768w, https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram-1536x716.png 1536w, https://ugurhalil.com/wp-content/uploads/2020/03/PaymentDiagram.png 1761w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Payment Diagrams</figcaption></figure>



<p>Strategy tasarım kalıbı ödeme sistemleri için kaftan biçilmiş bir yapıdır. Yukarıda tasarladığım yapı ödeme türleri, özel banka türlerini veya ödeme entegrasyonlarını desteklemektedir. Mesela bu yapıyı bir dosya üretme yapısına esnetemezsiniz 🙂 esnetirseniz baştan yazmış gibi olacaksınız. Şimdi bu yukarıda paylaştığım diyagramı maddeler halinde biraz açıklayayım;</p>



<ul><li>PaymentService sınıfı şimdilik üç ödeme tipini içermektedir, bunlar kredi kardı, havale / eft tarzında ödeme (account) bir de puan tabanlı ödeme sistemi. Bu ödeme türleri daha sonra PaymentStrategies arayüzü ile genişletip farklı ödemeler oluşturulabilir.</li><li>PaymentContext, PaymentStategies arayüzünü kendisine uygulayan sınıfların çalıştırılabilmesini sağlayan yapıdır.</li><li>CrediCardPaymentStrategy hangi banka entegrasyonun çalışacağına karar veren yapıdır.</li><li>CardStrategies arayüzü farklı banka veya ödeme sistemlerin oluşturulmasını sağlayan yapıdır</li></ul>



<p>Bu yazıda bahsetmediğim ve tasarıma dahil etmediğim IPN (Instant Payment Notification) yapısı var, bir sonraki yazımda IPN tasarımını yapıp size esnek bir yapı sunmaya çalışacağım, iyi okumalar bir sonraki yazıda görüşmek üzere.</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/diyagramlar-ve-odeme-sistemi-diyagrami/">Diyagramlar ve Ödeme Sistemi Diyagramı</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>How to create custom promotion?</title>
		<link>https://ugurhalil.com/promotion-condition-and-action/</link>
				<pubDate>Thu, 19 Mar 2020 14:20:22 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Hybris]]></category>
		<category><![CDATA[create custom promotion]]></category>
		<category><![CDATA[hybris]]></category>
		<category><![CDATA[promotion]]></category>
		<category><![CDATA[promotion action]]></category>
		<category><![CDATA[promotion condition]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=69</guid>
				<description><![CDATA[<p>Create customer-promoting promotions. Promotion is an effective promotion tool used by companies to promote themselves and market their products. It comes from the word promotion in French. Encouragement in Turkish is encouragement. While products such as watches, agendas, key rings and pens are generally used, personal products can also be offered to customers as promotions [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/promotion-condition-and-action/">How to create custom promotion?</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<div class="wp-block-image"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-1024x744.jpg" alt="How to create custom promotion?" class="wp-image-95" srcset="https://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-1024x744.jpg 1024w, https://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-300x218.jpg 300w, https://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-768x558.jpg 768w, https://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-1536x1116.jpg 1536w, https://ugurhalil.com/wp-content/uploads/2020/03/stockvault-online-shopping-laptop-to-shopping-cart185859-2048x1488.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption>Create customer-promoting promotions.</figcaption></figure></div>



<p>Promotion is an effective promotion tool used by companies to promote themselves and market their products. It comes from the word promotion in French. Encouragement in Turkish is encouragement. While products such as watches, agendas, key rings and pens are generally used, personal products can also be offered to customers as promotions in line with their sales targets. </p>



<span id="more-69"></span>



<p>In this context, there are many ways to create promotions on Hybris. Order discount, gift product, coupon identification etc. If you do not know how to use the promotions, you can get some information from this <a href="https://www.acorel.nl/2018/01/sap-hybris-commerce-promotion-engine/">link.</a></p>



<p>When creating a promotion, we sometimes ask that it take different actions as a result of certain conditions. We will see how we can accomplish this. First, I share the list below to see what we will do step by step.</p>



<h4>Follow List for Create a Special Promotion</h4>



<ol><li>We determine the condition of the promotion. (existing conditions may be useless.)</li><li>We determine the action we want to perform as a result of the condition. (existing actions may not be useless)</li><li>We are creating a new class with a contingent name that we will create.<ul><li>We implement the <strong><em>RuleConditionTranslator</em></strong> interface class to the created class.</li><li>We define the parameter to be used in the condition as fixed.</li><li>We fill the translate method according to the desired condition.</li></ul></li><li>We create a new class suitable for the action that will occur as a result of the condition.<ul><li>We implement the <strong><em>RuleExecutableAction</em></strong> interface class into the created class.</li><li>We fill the <em>executeAction</em> method according to the desired action.</li><li>Writing impex file.</li></ul></li></ol>



<h4>Let&#8217;s create one problem about promotion</h4>



<p>The promotion is activated when there is &#8220;happy birthday&#8221; text in the product description. When the promotion is activated, add a 50 percent discount to the order. So I want create so special condition and action.</p>



<h4>We create <strong><em>Condition</em></strong> class</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-java" data-lang="Java"><code>public class RuleQualifyingSearchedWordConditionTranslator implements RuleConditionTranslator {

    private final String SEARCHED_WORD = &quot;searchedWord&quot;;

    @Override
    public RuleIrCondition translate(RuleCompilerContext context, RuleConditionData condition, RuleConditionDefinitionData conditionDefinition) throws RuleCompilerException {
        try {
            RuleParameterData searchedWord = condition.getParameters().get(SEARCHED_WORD);
            if (searchedWord != null) {
                String word = searchedWord.getValue();

                final String cartRAOVariable = context.generateVariable(CartRAO.class);

                final RuleIrAttributeCondition ruleIrAttributeCondition = new RuleIrAttributeCondition();
                ruleIrAttributeCondition.setVariable(cartRAOVariable);
                ruleIrAttributeCondition.setOperator(RuleIrAttributeOperator.CONTAINS);
                ruleIrAttributeCondition.setAttribute(SEARCHED_WORD);
                ruleIrAttributeCondition.setValue(word);

                final RuleIrGroupCondition ruleIrGroupCondition = new RuleIrGroupCondition();
                ruleIrGroupCondition.setOperator(RuleIrGroupOperator.AND);
                ruleIrGroupCondition.setChildren(new ArrayList&lt;&gt;());
                ruleIrGroupCondition.getChildren().add(ruleIrAttributeCondition);
                return ruleIrGroupCondition;
            }
        } catch (Exception ex) {
            LOG.error(ex);
            throw ex;
        }
        return new RuleIrFalseCondition();
    }
}
</code></pre></div>



<h4>We create <strong><em>Action</em></strong> class</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-java" data-lang="Java"><code>public class RuleSearchedWordAddScoreAction implements RuleExecutableAction {

    @Override
    public void executeAction(final RuleActionContext context, final Map&lt;String, Object&gt; parameters) throws RuleEvaluationException {

        final String value = (String) parameters.get(&quot;value&quot;);
        final RuleEngineResultRAO result = context.getValue(RuleEngineResultRAO.class);
        final CartRAO cartRAO = context.getValue(CartRAO.class);

        Optional&lt;OrderEntryRAO&gt; orderEntry = cartRAO.getEntries()
                .stream()
                .filter(orderEntryRAO -&gt; orderEntryRAO.getProduct().getDescription().equalsIgnoreCase(value))
                .findFirst();

        orderEntry.ifPresent(orderEntryRAO -&gt; this.addOrderEntryDiscountRAOAction.addOrderEntryLevelDiscount(orderEntryRAO, false, value, result, context.getDelegate()));
    }

    public AddOrderEntryDiscountRAOAction getAddOrderEntryDiscountRAOAction() {
        return this.addOrderEntryDiscountRAOAction;
    }

    @Required
    public void setAddOrderEntryDiscountRAOAction(final AddOrderEntryDiscountRAOAction addOrderEntryDiscountRAOAction) {
        this.addOrderEntryDiscountRAOAction = addOrderEntryDiscountRAOAction;
    }
}</code></pre></div>



<h4>We Write Impex File</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-impex" data-lang="Impex"><code>$lang = en
$trLang = tr

############################# CONDITIONS ##########################

INSERT_UPDATE RuleConditionDefinitionCategory; id[unique = true]; name[lang = $lang]; name[lang = $trLang]; priority
                                             ; general              ; general               ; general                 ; 1250

INSERT_UPDATE RuleConditionDefinition; id[unique = true]                        ; name[lang = $lang]               ; name[lang = $trLang]             ; priority; breadcrumb[lang = $lang]                                     ; breadcrumb[lang = $trLang]                                   ; allowsChildren; translatorId                                               ; translatorParameters; categories(id)
                                     ; y_qualifying_searchedWord            ; Searched Word              ; Searched Word             ; 1111    ; Searched Word                                          ; How Many Passenger?                                          ; false         ; ruleQualifyingSearchedWordConditionTranslator          ;                     ; ido

INSERT_UPDATE RuleConditionDefinitionParameter; definition(id)[unique = true]          ; id[unique = true]   ; priority; name[lang = $lang]            ; name[lang = $trLang]          ; description[lang = $lang]                                                           ; description[lang = $trLang]                                                         ; type                                                        ; value              ; required[default = true]; validators;
                                              ; y_qualifying_searchedWord          ; searchedWord    ; 1111    ; Searched Word            ; Searched Word            ; Searched Word                                                                  ; Searched Word                                                                  ; java.lang.Integer                                           ;                    ; true                    ;

INSERT_UPDATE RuleConditionDefinitionRuleTypeMapping; definition(id)[unique = true]            ; ruleType(code)[unique = true]
                                                    ; y_qualifying_searchedWord            ; PromotionSourceRule


############################## Actions ###########################

INSERT_UPDATE RuleActionDefinition; id[unique = true]                          ; name[lang = $lang]                               ; name[lang = $trLang]                             ; priority; breadcrumb[lang = $lang]                                             ; breadcrumb[lang = $trLang]                                           ; translatorId                   ; translatorParameters                                         ; categories(id)
                                  ; searched_word_percentage_discount ; Percentage discount by the word   ; Percentage discount by the word   ; 1400    ; Apply {value} discount by the word                    ; Apply {value} discount by the word                    ; ruleExecutableActionTranslator ; actionId-&gt;ruleSearchedWordAddScoreAction       ; general


INSERT_UPDATE RuleActionDefinitionParameter; definition(id)[unique = true]              ; id[unique = true]; priority; name[lang = $lang]        ; name[lang = $trLang]      ; description[lang = $lang]                                                          ; description[lang = $trLang]                                                        ; type                                         ; value; required[default = true]; validators
                                           ; searched_word_percentage_discount ; value            ; 1000    ; Percentage discount value ; Percentage discount value ; Percentage discount that will be applied by the word                ; Percentage discount that will be applied by the word                ; java.lang.String                         ;      ;                         ; rulePercentageParameterValidator

INSERT_UPDATE RuleActionDefinitionRuleTypeMapping; definition(id)[unique = true]              ; ruleType(code)[default = PromotionSourceRule][unique = true]
                                                 ; searched_word_percentage_discount ;</code></pre></div>



<p>See you in our next post.</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/promotion-condition-and-action/">How to create custom promotion?</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>TFTP ile Router Yedekleme ve Geri Yükleme</title>
		<link>https://ugurhalil.com/tftp/</link>
				<pubDate>Fri, 14 Feb 2020 11:51:09 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Ağ (Network)]]></category>
		<category><![CDATA[ağ]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[tftp]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=45</guid>
				<description><![CDATA[<p>Trivial File Transfer Protocol (TFTP) 1980 yılında tanımlanmış, FTP&#8217; nin temel fonksiyonel şekli olarak ifade edilen basit bir dosya transfer protokolüdür. Basit yapısından dolayı kullanılması esnasında çok az bellek tüketilmektedir. Bu özelliğinden dolayı, yeterli yığın bellek cihazı (mass storage device) olmayan yönlendirici (router) bilgisayarların önyüklemesinde kullanılırdı. Halen ağ üzerinde bulunan host makinalar arasında küçük dosyaların [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/tftp/">TFTP ile Router Yedekleme ve Geri Yükleme</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p>Trivial File Transfer Protocol (TFTP) 1980 yılında tanımlanmış, FTP&#8217; nin temel fonksiyonel şekli olarak ifade edilen basit bir dosya transfer protokolüdür.</p>



<p>Basit yapısından dolayı kullanılması esnasında çok az bellek tüketilmektedir. Bu özelliğinden dolayı, yeterli yığın bellek cihazı (mass storage device) olmayan yönlendirici (router) bilgisayarların önyüklemesinde kullanılırdı. Halen ağ üzerinde bulunan host makinalar arasında küçük dosyaların transferi için kullanılır. TFTP kısmen PUP protokol grubunun eski bir parçası olan EFTP protokolüne dayanır. TCP/IP protokol grubunun geliştirilmesinin ilk safhalarında TFTP basitliğinden dolayı genellikle yeni bir host tipinin üstünde çalıştırılan ilk protokoldü.<br>
Kaynak :&nbsp;<a href="https://tr.wikipedia.org/wiki/TFTP" target="_blank" rel="noreferrer noopener">Kaynak Merkezi</a></p>



<span id="more-45"></span>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube"><a href="https://ugurhalil.com/tftp/"><img src="https://i.ytimg.com/vi/l3DVlO2j7j8/hqdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>TFTP Server kullanarak IOS’ in yedeği alınabilir veya IOS yüklenebilir. Bunun için Sistem Image File’ ın tam dosya adı bilinmelidir ve bu “show flash” komutu ile öğrenilebilir. Alınan bütün yedekler gibi IOS’ in yedeği de TFTP Server tarafından TFTP-Root klasörünün altına atılır.</p>



<div class="wp-block-image size-full wp-image-126"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/Router-Yedekleme-ve-Geri-Yukleme-TFTP.png" alt="TFTP Router Yedekleme ve Geri Yükleme" class="wp-image-46" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/Router-Yedekleme-ve-Geri-Yukleme-TFTP.png 806w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Yedekleme-ve-Geri-Yukleme-TFTP-300x129.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Yedekleme-ve-Geri-Yukleme-TFTP-768x331.png 768w" sizes="(max-width: 806px) 100vw, 806px" /><figcaption>TFTP Router Yedekleme ve Geri Yükleme</figcaption></figure></div>



<h2>Kod Açıklamaları</h2>



<p>Şimdi Sırasıyla işlemlerden bahsedelim ilk olarak yedek almak için dosya ismine ihtiyaç duyulmaktadır.<br>
<code>Router#show flash:</code><br>
İstenilen bilgi alındıktan sonra IOS&#8217;u sunucuya kaydetmeye başlayalım.<br>
<code>Router#show flash:</code><br>
Kaynak dosyasının ismini isteyecektir. Daha sonra TFTP sunucusunun ip adresini isteyecektir. IP yi verdikten sonra eminmisiniz diye teyit edecektir siz ENTER tuşuna bastıktan sonra kopyalama işlemi başlayacaktır.<br>
<code>Router#delete flash:</code><br>
Komutuyla işletim sistemini silmeye başlayalım. Komut girdikten sonra sizden dosya ismini isteyecektir bunu daha önce bulmuştuk. Dosyayı silmek istediğinize eminmisiniz sorusuna cevap verdikten sonra işletim sistemi tamamen silinmiş olacaktır.<br>
<code>Router#reload</code><br>
Komutuyla Router&#8217;ı baştan başlattığımızda MiniIOS kısmına geçecektir ve bizden işletim sistemini yüklememiz için bir kaç komut sunacaktır.<br>
Bu konu için gereken komutlar: tftpdnld, set, reset komutları dır.<br>
<code>rommon 1 &amp;gt; tftpdnld</code><br>
Komutundan sonra istenilen bilgilerin girilmesi istenecektir.<code>
IP_ADDRESS = ROUTE IP ADRESİ GİR
IP_SUBNET_MASK = ALT AĞ IP'sini GİR
DEFAULT_GATEWAY = İKİ BAĞLANTI ARASINDAKİ VARSAYILAN IP
TFTP_SERVER = PC SUNUCU IP ADRESİNİ GİR
TFTP_FILE = SUNUCUDAKİ DOSYA ADINI GİR
</code></p>



<p>Bu bilgiler girildikten sonra<br>
<code>rommon 1 &amp;gt; set</code><br>
Komutu kullanılır ve bilgiler hafızaya yerleştirilir.<br>
<code>rommon 1 &amp;gt; tftpdnld</code><br>
Kodunu tekrar çalıştırarak işletim sistemini geri yüklemek için izin isteyecektir. İzin verdikten sonra işletim sistemi yüklenmeye başlayacaktır.&nbsp;Yüklemeden sonra<br>
<code>rommon 1 &amp;gt; reset</code><br>
komutu işlenerek Router baştan başlatılır. ve işlemimiz burda bitmiş olur.</p>



<p>İlginiz için teşekkür ederim bir sonraki makalede görüşmek üzere.</p>



<p><em>Kullanılan Program :</em><strong> &nbsp;<em>Cisco Packet Tracer</em></strong></p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/tftp/">TFTP ile Router Yedekleme ve Geri Yükleme</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>Router Ospf Konfigürasyonu (CPT)</title>
		<link>https://ugurhalil.com/router-ospf-konfigurasyonu/</link>
				<pubDate>Fri, 14 Feb 2020 11:46:39 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Ağ (Network)]]></category>
		<category><![CDATA[ağ]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[ospf]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=41</guid>
				<description><![CDATA[<p>İngilizce Open Shortest Path First(OSPF), yani İlk Açık Yöne Öncelik anlamına gelen, bir TCP/IP ağındaki router&#8217;ların birbirini otomatik olarak tanımasında kullanılan bir protokoldür. Bu&#160;yönlendirme protokolü internette intra-AS yönlendirme için RIP gibi yaygınca kullanılan bir yöntemdir.&#160;Bu konfigürasyon&#160;temelde internet servis sağlayıcılarının (ISP) üst-tabakalarında kullanılır,&#160;kelimesindeki ilk O harfi yönlendirme protokolü şartlarının açık olduğunu gösterir(örnek olarak, Cisco’nun EIGRP protokolünün [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-ospf-konfigurasyonu/">Router Ospf Konfigürasyonu (CPT)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p>İngilizce Open Shortest Path First(OSPF), yani İlk Açık Yöne Öncelik anlamına gelen, bir TCP/IP ağındaki router&#8217;ların birbirini otomatik olarak tanımasında kullanılan bir protokoldür. Bu&nbsp;yönlendirme protokolü internette intra-AS yönlendirme için <a href="http://www.ugurhalil.com/2016/03/31/router-rip-konfigurasyonu/">RIP</a> gibi yaygınca kullanılan bir yöntemdir.&nbsp;Bu konfigürasyon&nbsp;temelde internet servis sağlayıcılarının (ISP) üst-tabakalarında kullanılır,&nbsp;kelimesindeki ilk O harfi yönlendirme protokolü şartlarının açık olduğunu gösterir(örnek olarak, Cisco’nun <a href="http://www.ugurhalil.com/2016/04/04/router-eigrp-konfigurasyonu/">EIGRP</a> protokolünün karşıtı gibi).</p>



<span id="more-41"></span>



<p>Kaynak : <a href="https://tr.wikipedia.org/wiki/OSPF">Vikipedia</a></p>



<div class="wp-block-image size-full wp-image-120"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/ospf.png" alt="Ospf Konfigurasyonu" class="wp-image-42" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/ospf.png 797w, https://ugurhalil.com/wp-content/uploads/2020/02/ospf-300x130.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/ospf-768x332.png 768w" sizes="(max-width: 797px) 100vw, 797px" /><figcaption>Ospf Konfigurasyonu</figcaption></figure></div>



<p>OSPF protokolü birden çok arealardan oluşan ve bunların&nbsp;birbirleri ile haberleşmesini sağlayan protokoldür.&nbsp;Tüm router ların birbirlerine bağlanabilmesi için oluşturulan ilk area ya (backbone area) yani&nbsp;&#8220;area 0&#8221; a bağlanmak zorundadırlar.&nbsp;Routerlar&nbsp;birbirleri ile haberleşmeden ağ kuramazlar bu yüzden ospf konfigürasyonu bir birlerine bağlı routerlar arasına &#8220;hello&#8221; paketlerini göndererek bir birleri ile haberleşmesini sağlıyor. Peki bu &#8220;hello&#8221; paketinin içinde neler var ?</p>



<blockquote class="wp-block-quote"><p>-Hello Paket İçeriği-
<strong>Router ID:</strong> Router da konfigüre edilen en yükse IP adresidir.
<strong>Network Mask:</strong> Router ID’ yi belirleyen interface’in ağ maskesidir.
<strong>Area ID:</strong> Hello paketi gönderen routerın interface’inin alan kimliğidir.
<strong>Router Priority:</strong> Routerın DR veya BDR seçimini belirlemektedir.
<strong>Hello Aralıgı:</strong> Hello paketleri arasındaki süredir ve 10 saniyedir.
<strong>Ölüm Aralıgı (Dead Interval):</strong> Komsu router ile bağlantının koptuğunu belirten süredir.
<strong>DR IP adresi:</strong> Mevcut DR ip adresidir. Bu adresi öğrenen Routerlar, OSPF mesajlarını bu ip adresine gönderirler.
<strong>BDR IP Adresi:</strong> Mevcut BDR ip adresidir. DR aktif olmadığı zaman OSPF mesajları bu&nbsp;ip adresine gönderilir.
<strong>Komsu Router ID’leri:</strong> Komsuluk tablosunda bulunan routerların ip adresleridir. Router kendi ip adresini bu alanda görürse database paylasımı gerçeklestirilir.
<strong>Authentication Information:</strong> Kimlik doğruluma tipi ve bilgisini içerir.
<strong>Stub Area Flag:</strong> Hangi tip LSA (Link State Advertisement) mesajlarının gönderileceği ve alınacağı bilgisini içerir.</p></blockquote>



<p>Hello paketlerinin gönderme aralığını kendimiz belirlemek istersek şu kodu yazmamız gerekecektir.</p>



<p><code>Router(config-if)#ip ospf hello-interval t</code> buradaki t bizim belirleyeceğimiz zamandır.</p>



<p>Open Shortest Path First Komşuluk Kurma&nbsp;Aşamaları</p>



<ul><li>Down : Hello paketinin alınmadığı durumdur.</li><li>Init : Routerlardan cevap bekleme adımıdır.</li><li>Two-Way : İki routerın birbirleri ile iletişime geçtiği adımdır.</li><li>Exstart &nbsp;:&nbsp;Karşılıklı&nbsp;iki router arasında paket alış&nbsp;verişinin&nbsp;yapıldığı andır.</li><li>Exchange :&nbsp;Routerların bilgi alışverişi yaptıkları adımdır.</li><li>Loading :&nbsp;;Elde edilen yeni yollar hakkındaki bilgileri&nbsp;routerlardan alma adımıdır.</li><li>Full :&nbsp;Yönlendirme bilgilerinin senkron hale getirilmesi durumudur.</li></ul>



<h2>Örnek:</h2>



<div class="wp-block-image size-full wp-image-121"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/ospf-1.png" alt="Ospf Konfigurasyonu" class="wp-image-43" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/ospf-1.png 900w, https://ugurhalil.com/wp-content/uploads/2020/02/ospf-1-300x146.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/ospf-1-768x373.png 768w" sizes="(max-width: 900px) 100vw, 900px" /><figcaption>Ospf&nbsp;Konfigurasyonu</figcaption></figure></div>



<p><code>Router0
---------
Router(config)#router ospf 1
Router(config-router)#network 10.0.0.1 0.255.255.255 area 0
Router(config-router)#network 192.168.0.1 0.0.0.255 area 0
Router(config-router)#network 30.0.0.1 0.255.255.255 area 0
Router(config-router)#end
</code><br>
<code>Router1
---------
Router(config)#router ospf 1
Router(config-router)#network 10.0.0.2 0.255.255.255 area 0
Router(config-router)#network 160.0.0.1 0.0.255.255 area 0
Router(config-router)#end
</code><br>
<code>Router2
---------
Router(config)#router ospf 1
Router(config-router)#network #network 160.0.0.1 0.0.255.255 area 0
Router(config-router)#network #network 160.0.0.1 0.0.255.255 area 0
Router(config-router)#end
</code></p>



<p>Göründüğü üzere bir birinden bağımsız 3 farklı ağın bir birleri ile haberleşmesini bu&nbsp;konfigürasyon ile sağlamış olduk.</p>



<p>İlginiz için teşekkür ederim bir sonraki makalede görüşmek üzere.</p>



<p>Kullanılan Program : <strong><em>Cisco Packet Tracer</em></strong></p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-ospf-konfigurasyonu/">Router Ospf Konfigürasyonu (CPT)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>Router Static Ip Konfigürasyonu (Cisco Packet Tracer)</title>
		<link>https://ugurhalil.com/router-static-ip-konfigurasyonu/</link>
				<pubDate>Fri, 14 Feb 2020 11:37:57 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Ağ (Network)]]></category>
		<category><![CDATA[ağ]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[router]]></category>
		<category><![CDATA[static ip]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=37</guid>
				<description><![CDATA[<p>Statik yönlendirme, bilgisayar ağlarında yönlendiricinin yol seçimi yapılandırılmasında bir yolu tarif eden bir veri iletişim kavramıdır. Ağın mevcut topolojisinde ilgili yönlendiriciler arasındaki iletişim yokluğu ile karakterize edilmiş yönlendirme türüdür. Yönlendirme tablosuna yolları elle ekleyerek gerçekleştirilir. Statik yönlendirmenin tersi dinamik yönlendirmedir. Bazen de uyarlanabilir yönlendirme olarak ifade edilir. Statik yönlendirme sistemlerinde yollar, sabit tanımlanır. Bu yollar [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-static-ip-konfigurasyonu/">Router Static Ip Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p><strong>Statik yönlendirme</strong>, bilgisayar ağlarında yönlendiricinin yol seçimi yapılandırılmasında bir yolu tarif eden bir veri iletişim kavramıdır. Ağın mevcut topolojisinde ilgili yönlendiriciler arasındaki iletişim yokluğu ile karakterize edilmiş yönlendirme türüdür. Yönlendirme tablosuna yolları elle ekleyerek gerçekleştirilir. Statik yönlendirmenin tersi dinamik yönlendirmedir. Bazen de uyarlanabilir yönlendirme olarak ifade edilir.</p>



<span id="more-37"></span>



<p>Statik yönlendirme sistemlerinde yollar, sabit tanımlanır. Bu yollar genellikle sistem yöneticisi tarafından yönlendiricinin içine girilir. Tüm ağ, statik yollar kullanarak yapılandırılabilir. Ancak bu tür yapılandırma hataya dayanıklı değildir. Ağda bir değişiklik olduğunda veya statik olarak tanımlanmış iki düğüm arasında arıza meydana geldiğinde trafiği yeniden yönlendirmeyecektir. Bu, ya etkilenen yol için arızayı onarmak için beklemeyi ya da bu yolculuğu yeniden başlatmadan önce sistem yöneticisi tarafından statik yolu güncellemeyi gerektirecektir. Bu arızalar düzelmeden çoğu istekler zaman aşımına uğrayacaktır. Daha detaylı bilgi almak isterseniz <a href="https://tr.wikipedia.org/wiki/Statik_y%C3%B6nlendirme">bu linkten</a> gidebilirsiniz.<br> Statik Yönlendirmenin Avantajları:</p>



<ol><li>İlave bant genişliği oluşturmaz.</li><li>Keşfetme gibi işlemler yapılmadığından dış ortamdan daha az etkilenir.</li><li>Performan daha yüksek gözlenebilir.</li></ol>



<p>Statik Yönlendirmenin Dezavantajları:</p>



<ol><li>Sistem yöneticisi yönlendirme işlemlerini planlamalıdır.</li><li>Yeni yönlendirici eklendiğinde veya değişiklik olduğunda yapılandırmayı yönetici elle yapmalıdır.</li><li></li></ol>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube"><a href="https://ugurhalil.com/router-static-ip-konfigurasyonu/"><img src="https://i.ytimg.com/vi/bNe-MrHAi5g/hqdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Küçük ağlar için (2 yada 3 routerin bulunduğu) tercih edilebilecek routing yöntemidir. Routerların routing tabloları&nbsp;ağ&nbsp;yöneticisi tarafından&nbsp;elle doldurulur, her routera ağdaki tüm networkler tanıtılır. Ağdaki&nbsp;routerlara yeni bağlanacak bir ağ&nbsp;otomatik olarak algılayamaz, bu nedenle yine elle tanımlanması gerekir, bu yüzden router static ip ağ&nbsp;büyüdükçe&nbsp;işlevselliğini kaybeder.</p>



<div class="wp-block-image size-full wp-image-125"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu.png" alt="Konfigurasyon için kullanılacak olan şema" class="wp-image-38" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu.png 927w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-300x145.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-768x371.png 768w" sizes="(max-width: 927px) 100vw, 927px" /><figcaption>Router Static Ip</figcaption></figure></div>



<h2>Router için Static Ip Konfigürasyonu</h2>



<p>Aşağıdaki resimde turuncu bölge ile belirtilen konfigürasyon Router 2 de yapılmıştır.</p>



<figure class="wp-block-image size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-aciklama.png" alt="Konfigürasyon için detaylı anlatım." class="wp-image-39" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-aciklama.png 927w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-aciklama-300x145.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Static-Ip-Konfigurasyonu-aciklama-768x371.png 768w" sizes="(max-width: 927px) 100vw, 927px" /><figcaption>Router Static Ip Açıklama</figcaption></figure>



<ul><li>Turuncu kutucuk içerisinde yer alan komutlar, ortak alanda buluşabilmeyi sağlayan router&#8217;ı konfigürasyon etmek için kullanılmaktadır. </li><li>Kırmızı kutucuklar içersinde yer alan bilgiler ise routerlar arasında iletişim kurulması için gereken tanımlamalar hakkında bilgi vermektedir</li></ul>



<p>CISCO routerlarda statik yönlendirme yapılırken kullanılan komut;<br> ip route [Hedef Ağ] [Ağ Alt Maskesi] [Bağlanacak port veya Hedef IP]</p>



<p><code>Router#show ip route</code><br>
Komutuyla da routerın routing tablolarına ulaşılabilir ve buradan routing tablosu kontrol edilebilir.</p>



<p>Router1<br>
<code>
Router(config)#ip route 50.0.0.0 255.0.0.0 30.0.0.2
Router(config)#ip route 40.0.0.0 255.0.0.0 20.0.0.2
</code></p>



<p>Router2<br>
<code>
Router(config)#ip route 10.0.0.0 255.0.0.0 30.0.0.1
Router(config)#ip route 20.0.0.0 255.0.0.0 30.0.0.1
</code></p>



<p>Router3<br>
<code>
Router(config)#ip route 30.0.0.0 255.0.0.0 20.0.0.1
Router(config)#ip route 10.0.0.0 255.0.0.0 20.0.0.1
</code></p>



<p>İlginiz için teşekkür ederim bir sonraki makalede görüşmek üzere.<br>
<em>
Kullanılan Program : <strong>Cisco Packet Tracer</strong></em></p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-static-ip-konfigurasyonu/">Router Static Ip Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>Router Eigrp Konfigürasyonu (Cisco Packet Tracer)</title>
		<link>https://ugurhalil.com/router-eigrp-konfigurasyonu/</link>
				<pubDate>Fri, 14 Feb 2020 09:00:48 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Ağ (Network)]]></category>
		<category><![CDATA[ağ]]></category>
		<category><![CDATA[eigrp]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=34</guid>
				<description><![CDATA[<p>Enhanced Interior Gateway Routing Protocol(Router Eigrp Konfigürasyonu). IGRP’nin yetersiz kalması ile geliştirilmiş bir protokoldür. Hem distance vector hem de linkstate bir protokol olduğu için hybrid prtokol başlığı altında incelenir. IGRP’den farklı olarak belli aralıklarda network bilgisini yollamak yerine hello paketleri ile komşu routerlerın up olup olmadıklarını kontrol eder. Geri gelen acknowledgement paketleriylede komşu router’ın up [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-eigrp-konfigurasyonu/">Router Eigrp Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p><strong>Enhanced Interior Gateway Routing Protocol(Router Eigrp Konfigürasyonu)</strong>. IGRP’nin yetersiz kalması ile geliştirilmiş bir protokoldür. Hem distance vector hem de linkstate bir protokol olduğu için hybrid prtokol başlığı altında incelenir. IGRP’den farklı olarak belli aralıklarda network bilgisini yollamak yerine hello paketleri ile komşu routerlerın up olup olmadıklarını kontrol eder. Geri gelen acknowledgement paketleriylede komşu router’ın up olup olmadıklarını kabul eder.Bu işlem sırasında EIGRP’de </p>



<span id="more-34"></span>



<p>TCP yerine cisco’nun geliştirdiği özel RTP protokolü kullanılır (RTP,TCP ile aynı mantığa sahiptir). Benzer şekilde sisteme yeni bir router dahil olduğunda veya down olduğunda add ve delete bilgilerini diğer router’lara gönderir. Sisteme yeni dahil olan bir router ise query paketleri ile sistemdeki router topoloji’si hakkında bilgi sahibi olur. Help paketlerinide multicast adresi olan 224.0.0.9 ip adresi üzerinden gönderir. Metric hesabında bandwidth ve delay’ı kullanır (kbit,usec). EIGRP , IGRP ile çalışan router’larla aynı AS numarısı&#8217;na sahipse iletişim kurabilir. Fakat eigrp ile çalışan routerın routing table’ında igrp ile çalışan routerlar external olarak gösterilir. (routing table&#8217;da “DEX” olarak gözükür.)</p>



<p>Kaynak :&nbsp;<a href="https://tr.wikipedia.org/wiki/EIGRP" target="_blank" rel="noreferrer noopener">Daha Fazla Bilgi İçin</a></p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube"><a href="https://ugurhalil.com/router-eigrp-konfigurasyonu/"><img src="https://i.ytimg.com/vi/4UwUZh5868w/hqdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Router Eigrp, CISCO tarafından geliştirilmiş bir yönlendirme protokolüdür. Hem Distance-Vector hem de Link-State protokollerinin özelliklerini göstermesinden dolayı Advanced Distance Vector veya&nbsp;Hybrid protokol olarak adlandırılmaktadır.</p>



<h3>Çalışma Prensibi</h3>



<p>Peki bu protokol tam olarak nasıl kullanılmaktadır&nbsp;onu anlatalım.&nbsp;Variable Length Subnet Mask (VLSM) bize her bir subnet için farklı bir mask kullanmamızı sağlar ve bu sayede&nbsp;ip adreslerinin verimli bir şekilde kullanılması sağlanır. VLSM bir alt ağda alt ağ oluşturma anlamına gelir. VLSM sayesinde ağ üzerindeki ihtiyaca göre ip adresleri tahsis edilir.</p>



<p>Router Eigrp, periyodik update göndermemektedir. Bunun yerine “partial triggered update” gönderir. Yani her hangi bir &nbsp;yön için yol yada metrik değişikliği&nbsp;olduğunda update gönderir ve bu update içerisinde sadece değişen&nbsp;bilgi yer almaktadır.&nbsp;EIGRP update paketlerinin bütün&nbsp;komsu routerlara doğru sırada ulaşıp&nbsp;ulaşmadığından&nbsp;sorumludur. Bir güncelleme paketi karşı router’ a ulaştığında&nbsp;RTP (Reliable Transport Protocol) bir onay mesajı beklemektedir.&nbsp;Onay mesajıgelirse paketin sorunsuzca hedefe ulaştığını düşünebilirsiniz.</p>



<p>DUAL algoritmasında&nbsp;metrik&nbsp;ya da cost olarak tanımlanan uzaklık bilgisi baz alınmaktadır. Uzaklık bilgisini kullanarak router’ ın route tablosunda hedefe ait yedek yollar yer alır. Router, hedefe en kısa yoldan ulaşamadığında&nbsp;yedek yollar&nbsp;üzerinden ulaşmaya çalışır.</p>



<p>Protocol-Dependent Modules (PDMS) ;&nbsp;EIGRP IP, AppleTalk ve Novell NetWare protokollerini desteklemektedir. PDM bu farklı protokollerden sorumlu modüldür.</p>



<p>EIGRP 3 farklı tablo kullanmaktadır bunlar:&nbsp;Neighbor Table,&nbsp;Topology Table,&nbsp;IP Routing Table.<br>
5 adet EIGRP paketi vardır:&nbsp;Hello,&nbsp;Update,&nbsp;Query,&nbsp;Reply,&nbsp;ACK</p>



<p>1- Hello Paketi:&nbsp;Bu paket komşu routerlar ile komşuluk kurulması için kullanılmaktadır.</p>



<p>2-Update Paketi:&nbsp;Yönlendirme bilgilerinde değişiklik olduğunda gönderilir.</p>



<p>3-Query Paketi:&nbsp;Router yeni bir bilgiye ihtiyaç duyulduğunda bu paket gönderilir.</p>



<p>4-Reply Paketi:&nbsp;Query paketlerine cevap olarak gönderilmektedir.</p>



<p>5-ACK Paketi:&nbsp;Bir paketin doğru olarak gönderildiğini doğrulamak için gönderilir.</p>



<div class="wp-block-image size-full wp-image-122"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/Router-Eigrp-Konfigurasyonu.png" alt="" class="wp-image-35" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/Router-Eigrp-Konfigurasyonu.png 801w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Eigrp-Konfigurasyonu-300x151.png 300w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Eigrp-Konfigurasyonu-768x386.png 768w" sizes="(max-width: 801px) 100vw, 801px" /><figcaption>Router-Eigrp-Konfigurasyonu</figcaption></figure></div>



<p><strong>Router11</strong><br>
<code>
Router(config)#router eigrp ?
Autonomous system number
Router(config)#router eigrp 1
Router(config-router)#network 60.0.6.0
Router(config-router)#network 50.0.5.0
Router(config-router)#no auto-summary
Router(config-router)#end
</code></p>



<p><strong>Router7</strong><br>
<code>
Router(config)#router eigrp 1
Router(config-router)#network 50.0.5.0
Router(config-router)#network 10.0.1.0
Router(config-router)#end
</code></p>



<p><strong>Router8</strong><br>
<code>
Router(config)#router eigrp 1
Router(config-router)#network 10.0.1.0
Router(config-router)#network 20.0.2.0
Router(config-router)#end
</code></p>



<p><strong>Router9</strong><br>
<code>
Router(config)#router eigrp 1
Router(config-router)#network 20.0.2.0
Router(config-router)#network 30.0.3.0
Router(config-router)#end
</code></p>



<p><strong>Router10</strong><br>
<code>
Router(config)#router eigrp 1
Router(config-router)#network 30.0.3.0
Router(config-router)#network 40.0.4.0
Router(config-router)#end
</code></p>



<p>İlginiz için teşekkür ederim bir sonraki makalede görüşmek üzere.</p>



<p>Kullanılan Program : <strong><em>Cisco Packet Tracer</em></strong></p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-eigrp-konfigurasyonu/">Router Eigrp Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
		<item>
		<title>Router Rip Konfigürasyonu (Cisco Packet Tracer)</title>
		<link>https://ugurhalil.com/router-rip-konfigurasyonu/</link>
				<pubDate>Fri, 14 Feb 2020 08:46:07 +0000</pubDate>
		<dc:creator><![CDATA[Halil UĞUR]]></dc:creator>
				<category><![CDATA[Ağ (Network)]]></category>
		<category><![CDATA[ağ]]></category>
		<category><![CDATA[network]]></category>
		<category><![CDATA[rip]]></category>
		<category><![CDATA[router]]></category>

		<guid isPermaLink="false">http://ugurhalil.com/?p=30</guid>
				<description><![CDATA[<p>Router Information Protocol (Router Rip), yani Yönlendirici Bilgi Protokolü anlamına gelen RIP, bir TCP/IP ağındaki router&#8217;ların birbirini otomatik olarak tanımasında kullanılan bir iç yönlendirme protokoldür. Aynı zamanda uzaklık vektör algoritmasına dayanır ve IGP&#8217;nın bir uygulamasıdır. Yönlendirme kararları, düğümler arasındaki sıçramaların sayısına dayanır.İlk olarak XNS protokol kümesinde kullanılmış olup daha sonra IP ağ uygulamalarında kullanılmıştır.Routing versiyonları [...]</p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-rip-konfigurasyonu/">Router Rip Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></description>
								<content:encoded><![CDATA[
<p>Router Information Protocol (Router Rip), yani Yönlendirici Bilgi Protokolü anlamına gelen RIP, bir TCP/IP ağındaki router&#8217;ların birbirini otomatik olarak tanımasında kullanılan bir iç yönlendirme protokoldür. Aynı zamanda uzaklık vektör algoritmasına dayanır ve IGP&#8217;nın bir uygulamasıdır. Yönlendirme kararları, düğümler arasındaki sıçramaların sayısına dayanır.İlk olarak XNS protokol kümesinde kullanılmış olup daha sonra IP ağ uygulamalarında kullanılmıştır.<br>Routing versiyonları : Routing bilgi protokolünün 3 versiyonu bulunmaktadır.Ripv1,Ripv2 ve RIPng<br> Kaynak : <a rel="noreferrer noopener" href="https://tr.wikipedia.org/wiki/Y%C3%B6nlendirici_Bilgi_Protokol%C3%BC" target="_blank">Yönlendirici Bilgi Protokolü (RIP)</a></p>



<span id="more-30"></span>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube"><a href="https://ugurhalil.com/router-rip-konfigurasyonu/"><img src="https://i.ytimg.com/vi/mrOEt3qhcMw/hqdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p class="has-normal-font-size">Router Rip Konfigürasyonu<strong>&nbsp;(Routing&nbsp; Information Protocol (RIP))</strong>&nbsp;bir distance –vector routing protokolüdür. Distance-vector routerlar routing tablolarının tamamını komşu routelara gönderir böylelikle router komuşularından aldığı routing bilgileri ile kendi bilgilerini birleştirerek routing tablosunu oluşturur. Ağ&nbsp;protokolü olarak rip kullanılan bir ağda&nbsp;her 30 saniyede bir routerlar&nbsp; routing tablosunun tamamını tüm aktif interfacelere gönderir. Rip en iyi yolu hesaplamak için hop sayısına bakar (maksimum geçilebelecek hop sayısı 15 dir) bundan dolayı küçük ağlar&nbsp;için rip kullanışlı bir protokol iken büyük ağlarda&nbsp;ve wan yapısında yetersiz kalmaktadır. Rip version 1 ve version 2 olmak üzere ikiye ayrılıyor Rip version 1 ‘i&nbsp; tercih ederseniz &nbsp;version 1 classfull dur yani ağdaki&nbsp;tüm cihazlar aynı subnet’e sahip olmak durumundadır. Version 2 ise classless dır yani route güncellemeleriyle beraber subnet masklarıda gönderir ve aynı zamanda prefix routing sağlar. Rip’in administartive distance numarası ise 120 dir.</p>



<div class="wp-block-image size-full wp-image-123"><figure class="aligncenter size-large"><img src="http://ugurhalil.com/wp-content/uploads/2020/02/Router-Rip-Konfigurasyonu.png" alt="" class="wp-image-31" srcset="https://ugurhalil.com/wp-content/uploads/2020/02/Router-Rip-Konfigurasyonu.png 745w, https://ugurhalil.com/wp-content/uploads/2020/02/Router-Rip-Konfigurasyonu-300x189.png 300w" sizes="(max-width: 745px) 100vw, 745px" /><figcaption>Router-Rip-Konfigurasyonu</figcaption></figure></div>



<p>20.0.0.2&nbsp;ip ye sahip bilgisayar ile 50.0.0.3&nbsp;ip ye sahip bilgisayar iletişime geçebilmesi için birbirlerini tanımaları gerekiyor. Bunun için Rip komutunu kullanacağız. Herhangi bir tanımlama yapmasak Router4 ile Router5 farklı konumlarda&nbsp;olduğu için ping atıldığında request timed out a düşecektir yani karşı tarafdan hiçbir yanıt alınamıyacak.</p>



<p>Her Router ayrı bir ağ&nbsp;olarak düşünürsek giriş&nbsp;portlarına bağlı&nbsp;ip adreslerini&nbsp;tanımlamamız gerekir.</p>



<p><strong>Router4</strong><br>
<code>Router(config)#router rip
Router(config-router)#net
Router(config-router)#network 20.0.0.1
Router(config-router)#network 30.0.0.1
Router(config-router)#network 10.0.0.1
Router(config-router)#end
Router#</code></p>



<p><strong>Router5</strong><br>
<code>Router(config)#router rip
Router(config-router)#net
Router(config-router)#network 40.0.0.1
Router(config-router)#network 50.0.0.1
Router(config-router)#network 10.0.0.2
Router(config-router)#end
Router#</code></p>



<p>İlginiz için teşekkür ederim bir sonraki makalede görüşmek üzere.</p>



<p><em>Kullanılan Program :</em><strong> &nbsp;<em>Cisco Packet Tracer</em></strong></p>
<p>The post <a rel="nofollow" href="https://ugurhalil.com/router-rip-konfigurasyonu/">Router Rip Konfigürasyonu (Cisco Packet Tracer)</a> appeared first on <a rel="nofollow" href="https://ugurhalil.com">Halil UĞUR</a>.</p>
]]></content:encoded>
										</item>
	</channel>
</rss>
